code: func Metadatify(i interface{}) (Metadata, error) {
  	value := reflect.ValueOf(i)
  	if value.Kind() == reflect.Map {
  		m := map[string]interface{}{}
  		for _, k := range value.MapKeys() {
  			m[k.String()] = value.MapIndex(k).Interface()
  		}
  		return Metadata(m), nil
  	}
  	return nil, errors.New("is not a map")
  }
docs: // Metadatify converts maps into Metadata.