Store::SPARQL reads and writes to Virtuoso (>=6.1.7)

We're probably going to have to chat about this one:

1. I had to add some ugly state maintenance Test::RDF::Trine::Store because I couldn't guarantee an empty store to test context-less semantics. The tests seem to work on the ones that I tried, but I don't have all the backends.
2. Virtuoso doesn't respect `q=` values in the `Accept:` header, which made response handling complicated. At the moment it's hard-coded to JSON because V does some stupid, stupid behaviour otherwise.
3. The net effect is that robust, product-independent HTTP response handling will be very, very complicated. I stubbed out a provision for handling different products, but I have more pressing things to do than fill that all out.

Otherwise, it works.
Are all of these JSON functions meant to parse SPARQL JSON results? Do they differ from RDF::Trine::Iterator::JSONHandler in some Virtuoso-specific way?