Feature/fields refactor work of 9/9

The pattern we usually use (and is needed because of how resources are handled in angular.Resource) is that you should return a serialisation of the object that has been created with the addition of an identifier that can be used for retrieving the object.