Feature/clean up deserialization

@sheavalentine-mdsol @jcarres-mdsol @mdsol/hypermedia-team Please review and merge.

This PR:
* Symmetrized Serializer and Deserializer base functionality
* Symmetrized Factory specs
* Misc cleanup of file locations
* Consolidated errors in one file


This strikes me as wacky.  target ends up becoming a magic keyword in subclasses.