Fixing various TransactionXAResource bugs
 - eliminated 'newTxn' and reused 'transaction' local variable instead to reduce the count of used local method variables
   (there was also a bug in the code related to these two local variables where we used
   'transaction' instead of 'newTxn' in transactionUpdater.compareAndSet() method calls)
 - setting ok flag to 'true' to indicate transaction association succeded without errors
TransactionXAResource.rollback() maps to transaction.rollback()
fixing TransactionXAResource serialization issue
fixing javadoc warnings
Replace assert instanceof checks by if ( instanceof) throws IllegalArgumentException statements. Also: make sure that MSCLogger is used for null parameter validation and check for null parameters on TransactionControllerContext subclasses.
At ServiceBuilderImpl: fix mistaken MSCLogger.SERVICE.methodParameter(...) statements, the correct is throw MSCLogger.SERVICE.methodParameter(...)
Remove needless casting (Transaction) transaction.
Add test to ServiceContext other methods and validations. Run it with both ParentServiceContext and ServiceContextImpl
Implement TransactionControllerContext.validateTransaction in terms of TransactionController.own
Make ServiceBuilder.install return ServiceController, an interface with methods for removal, restarting and retrying the service.
Move methods from ManagementContext interface to other classes/interfaces, such as ServiceContext, ServiceRegistry and ServiceContainer.
minimize count of TransactionXAResourceManager instances to minimum