Implement transaction support for IDatabaseConnection
- Add Transaction function taking an async function that receives an IDatabaseTransaction object. This allows the function to run code inside a transaction, any failure will roll back, returning will commit
- Convert all mx-puppet-bridge SQL code to use Transaction
Closes: #1 (closed)