[WIP] Property introspection, JSON adapter

An attempt to bring some light reflection into Swift for JSON parsing.
Might I recommend calling them `JSONCodec`s instead of adapters. Because you encode and decode, they are a codec.