Feature/transactions

Builds off of #4 to provide a new `TransactionalConnection` class that can be used for establishing connections that use database transactions