code: func LoadWith(path string, v interface{}, um UnmarshalFunc) error {
  	if applicationName == "" {
  		panic("store: application name not defined")
  	}
  
  	globalPath := buildPlatformPath(path)
  
  	data, err := ioutil.ReadFile(globalPath)
  
  	if err != nil {
  		// There is a chance that file we are looking for
  		// just doesn't exist. In this case we are supposed
  		// to create an empty configuration file, based on v.
  		empty := reflect.New(reflect.TypeOf(v))
  		if innerErr := Save(path, &empty); innerErr != nil {
  			// Smth going on with the file system... returning error.
  			return err
  		}
  
  		v = empty
  
  		return nil
  	}
  
  	if err := um(data, v); err != nil {
  		return fmt.Errorf("store: failed to unmarshal %s: %v", path, err)
  	}
  
  	return nil
  }
docs: // LoadWith loads the configuration using any unmarshaler at all.