added new transaction API on ConnectionInterface and its implementors. refs #368.
initial tests
use transaction API in Generator and Runtime (tests-suite not covered yet)
use "callable" typehint instead of "Closure" in the transaction API signature