Adding public property to the transactions to allow access to the parent connection. This may be helpful to methods that take a transaction as a parameter.
Improving documentation in several places.
Adding snapshot to external notification. Adding associated constant for key in dictionary.
Adding checks & exceptions to ensure the mappings & notifications passed into the API are correct.