Improves exception handling in the RunInTransaction method and adds back a throw (needed so we are able to tell what exception has happened inside a RunInTransaction call).
Improves the exception thrown when a transaction times out. Removes unnecessary comments.
Fixes a deadlock that would occur when running the ExecSQL method on iOS where GetAwaiter().OnCompleted would not be called.
Merge pull request #361 from tiagomargalho/issue-348

Fixes a couple of issues found when running tests on the device