[MSC2-43] Revisited ServiceContext.add/replaceService() methods.
[MSC2-44] Method arguments should flow in order of decreasing "magnitude".
[MSC2-45] Service replacement should require only transaction and controller.