[WIP] JSON Deserializer

Targets #151

This is highly WIP. Please review the interface definitions before I
start implementing this stuff!
`wl` or `ws`? (I know, both are possible, but which one would you prefer?)