Delete no-longer used SetTransactionalStateTask.
Fix ServiceControllerImpl.TransactionalInfo.scheduleRemoval: checks for state replaced by checks for transactionalState
At AbstractServiceTest.assertNoCriticalProblems, print the problem message and stack trace, when available
Fix undemand logic (undemnad was being invoked at more than one point, thus causing the counts to get inconsistent). Also:

- replace the up demanded nomenclature, it no longer makes sense now that down demanded is removed
- add TaskFactory parameter to methods related to setTransition method: it is now needed
- remove uneeded parameters from ServiceController.TransationalInfo.isStopping/Starting methods
WIP (reviewing structural changes in revert methods for services, dependencies, and registrations/ also needed for revert installation IP)
make UndemandDependencies and ServiceRemoveTask revertible (working on making this revertion work properly)