fix TestService compilation issues
Create basic structure to run service tests, with some code fixes.
Make basic removal of services work.
Service failure handling
introduce missing removeRegistry() method in the API
tasks may be cancelled only if rollback have been requested
refactoring method names doBegin/doEnd => setClassLoader/unsetClassLoader
fixing removeRegistry compilation issues
Tidy up service implementation.
Move service operations from ServiceContext to ServiceTarget.
At ServiceContext interface: the container should not be enabled/disabled; rename ServiceContext.removeContainer to shutdownContainer.
Add required dependencies validation check.
Fix service dependency cycle detection.
removing unused classes from txn package
refactoring implementation classes from txn to _private package
refactoring implementation classes from service to _private package
eliminating ServiceTarget
Remove DependencyFlagImpl and replace ServiceModeImpl by ServiceModeBehavior.
Make DependencyFlag.DEMANDED and DependencyFlag.UNDEMANDED work according to the javadoc of those flags: if DEMANDED, the dependency is demanded regardless of the dependent's service mode rules; if UNDEMANDED, the dependency demand is never propagated.
Implemented transaction's enable/disable/remove registry + container shutdown methods