Workaround for parent dependency bug: a parent cannot be required dependency (this could change as a result of further required). Reenable parent dependency tests.
Make service removal idempotent, and add an assert statement to prevent hard to track bugs involved in mistaken transitions
Make sure that a service is aware it is up or down, even when a transaction affecting its state is rolleback.

This is a temporary workaround to reenable assertions in the tests that were commented out. One alternative is the current fix, that would need implementation completion. Another alternative to the problem is making service track down every change performed during current transaction so that it can revert the change when needed.