* Added support for string, int(8,16,32,64), uint(8,16,32,64) and each of their ptr types as acceptable to use for the ID field.
* No longer declaring a new idErr var; also eliminate the switch within a switch - if the ID field was a string or *string it will continue. Added a couple extra tests.
* Add support for iso8601 struct tag.
Currently only unix timestamps are supported for serialising time.Time objects. The JSON.API specification doesn't make a specific requirement on time serialisation format, though it does make a recommendation for using ISO8601.
This adds support for an additional struct tag `iso8601` which controls serialisation and deserialisation using the ISO8601 timestamp format.
* Update doc.go with information regarding iso8601 and omitempty tag arguments.
* add support to unmarshal attributes to struct field that are ptr types
* Spacing, addressed all the linter warnings, comments to describe errors, cleanup, left a TODO note to resolve the Error messaging.
* Added the MarshalOnePayloadWithoutIncluded method for marshaling single objects and their relations without actually populating the "included" key with the full related object.
* Completed method description.
* Added a test to ensure that the library is capable of Unmarshmaling a payload where the One object in the payload had relationships but did not include them via "included"