Require scopes for transactions

By requiring scope for transactions, any exception will be caught and
make the transaction abort. This makes Dexie.js have the most waterproof
transaction handler.