code: func (d Data) GetMapFromJSON(key string) (map[string]interface{}, error) {
  	if !d.KeyExists(key) || len(d.Values[key]) == 0 {
  		return nil, nil
  	}
  	result := map[string]interface{}{}
  	if err := json.Unmarshal([]byte(d.Get(key)), &result); err != nil {
  		return nil, err
  	} else {
  		return result, nil
  	}
  }
docs: // GetMapFromJSON assumes that the first element in data[key] is a json string, attempts to
  // unmarshal it into a map[string]interface{}, and if successful, returns the result. If
  // unmarshaling was not successful, returns an error.