Hale serializer meeting Crichton functionality

This is an early commit for the new Hale serializer.  Released for comment.  It's here for feedback, but I am well aware that it needs substantial code cleanup.
I don't see a way around that. You could create a separate fixtures file and load it, but I feel like it's better to have the test file be self-contained.