Preliminary binary-type commit

Note: Files will be moved around as much of the new type-handling stuff gets
mvoved into a new ejson package.

Testing to come