Impl #45 displaying message with no macro assigned
- Refactored Macro logic into MacroMode.
- Added a little bit of mode API to Push, for better organization
  ass these modes get more complex.