(PDB-1011) Allow querying of PDB directly via a TK service

This commit adds a function to the PuppetDBServer service to execute a
query and return the results as a Clojure data structure (rather than
streaming JSON over HTTP). A function can be passed in that will accept
a lazy seq to consume the rows
that's true except for catalogs, but we have a number of weirder endpoints on v4 that don't even use the query eng. version, server-time, etc...