Require a scope.
Refactor sessionscope and sessionfactoryholder
Always use a transaction in session scope
Pass session scope and transaction scope tests.
Pass scope tests.
Updated session scope doc.
Make threadscope injectable to sessionscope