Added name to ApiObjectField

Added optional name to ApiObjectField with default to empty string.
Logical selection of name

REST names don't always match the Java standard naming convention. As such you should be able to optionally set the name. In the absence of the name it should default to the field name.
fixes compilation errors and added tests for pull request 31