starting one-way trip

Added tests for the current json serialization.
The purpose of the one-way trip is to persist the output into files, so we can verify that we can deserialize them back to protocol case classes as we change the serialization format and/or the case class.

/cc @jsuereth 

I think this is a real issue (though separate from this patch). I'm curious what play Json does with a long outside of 31 bits. Pickling's default Json PickleFormat uses a string here which is its own kind of terrible but we'll be redoing our own PickleFormat anyhow. We can probably also use Int in Scala in some of these cases. Anyway let's make a Trello card for it, and also this points out that we should probably put a huge long in the test suite so we detect any change in representing it.