Factor out adapter classes

These are a nice cleanup at this point but essential for the next step of
creating in-ruby connections and presenting a consistent interface.
Sketch out query and stream commands

Basic functionality implmented with support for interpolated and prepared
queries.