Working with arbitrary clients

HotClient and Base now supports taking an arbitrary client, for example from a separate connection pool or a legacy system. Removed transactions since they will not work properly in current form.