[WIP] JSON Deserializer

Targets #151

This is highly WIP. Please review the interface definitions before I
start implementing this stuff!
It makes the life of someone looking for documentation a _whole lot_ easier, especially if they do not know much about doxygen.