Support streaming query()

As indicated in issues #2 and #3, streaming isn't supported.  This fixes that by checking if a callback is passed or not.  If one is, it behaves normally.  If one is not, do not pass a callback to the inherited function and instead attach listeners to facilitate detecting slow queries and emitting query events.