When registering a state using RegisterState(...), I want to be able to optionally include the message types to subscribe to so I don't have to do in the state class itself. This helps with early-on subscriptions and visibility when constructing a state machine.
This relates to #86 where...
Just like Lite.EventIPC, we should be able to have different MessageTypes that a state can subscribe to and not just any message passed along.