Decouple Hub and Myo

- The concrete Myo class has been decoupled from the Hub class. Now a hub will let listeners know of a pair event and provide a pointer to a Myo. The listener is responsible for creating a Myo. The hub will also publish events to route Myo events to any listeners.
- Use interfaces where possible instead of concrete Myo class.