clean up the header structure
don't hold schema's by reference
parsers for maps and arrays
support for parsing a couple of more types c++ side
remove prints