changes:
- beginTransaction returns promise
- async load property accepts transaction
- transaction returned, if passed it or a value is 'returnTransaction' else not
- $data.dbClient.Transaction moved to $data.Transaction
- transaction created by EntityContext for executeQuery and saveChanges
ADD: tests
Merge remote-tracking branch 'origin/development' into development