The main piece of functionality lacking at this point is multi-value
fields. Currently the XML duplicates them. Perhaps it's worth
subclassing document for XML and JSON so that we get the main document
logic exposed as well as proper management of these fields.
Aside from that, the only thing remaining is to have a way of choosing
to add using json rather than XML.
It turns out that Solr's JSON format is either too complex (duplicate
keys) or too simple (removing the ability for session based boosts or
commitwithin). I've opted to implement the simple. I plan to raise an
issue to get the format sorted out.