Move basic write methods to Input and Output. Use null (0xFF) to denote cache-miss.
Make generated methods private. Generate return type for unserialize.
Refactor primitives check.
Basic functionality for map encoding.
Added full support for map serialization and tests.
Added full caching for supported object types.