serialization - types only

Only type defs for now, will add in the actual stuff once this is okay'd.

Sort of odd way of getting all the maps but the alternatives are exposing them directly or using reflection, both of which I feel are worse.

Oh, and checkstyles suck... it dies on java 8 features (lambdas).
Fair enough, I'll look for that in your next PR.