code: func NewLocation(host uuid.UUID, lp Profile) (*Location, error) {
  	l := new(Location)
  	l.UUID, _ = uuid.V4()
  	l.Active = true
  	l.Host = host
  	if err := mergo.MergeWithOverwrite(&l.Profile, lp); err != nil {
  		return nil, errors.New(err.Error() + " - Could not set initial location profile")
  	}
  	if err := storage.Store(l); err != nil {
  		return nil, errors.New(err.Error() + " - Could not write location to storage")
  	}
  	return l, nil
  }
docs: //
  // Location related functions and methods
  //
  // Create a Location