Added a new mechanism called InvokerMap.

After doing some substantial coding with MA, I started finding the whole adding and removing event listeners in Register/UnRegister to be tedious/fragile.

Looking at the EventMaps in RobotLegs, I implemented something very similar for MA. We now have a mechanism called InvokerMap, that assists in mapping handlers to invokers.

The benefits of this are as follows:
- Can now find out if an Invoker has a particular handler
- Can now get a count of handlers for an invoker
- Every Mediator now has an Invoker map, and on UnRegister all handlers are automatically removed from the map (i.e. no more manual removing of listeners)
- Can now use anonymous handlers instead of junking up your mediators with named handler functions/methods

Examples:
InvokerMap.Add (StartExerciseInvoker, (sender, e) => SetVisibleButtons (pauseVisible: true));

InvokerMap.RemoveAll();

InvokerMap.GetInvokerHandlerCount (MyInvoker);

InvokerMap.InvokerHasHandler (TestInvoker, TestHandler);