start implementing command_tree
add an unspecialized << operator
make command_tree append to top-most entry point
Implement a ModeOpener mixin
Write tests for expected ModeCloser behavior
Test popping from one-level deep CommandTree
Add a ModeCloser test with 2-deep modestack
Make the 2-deep ModeCloser test pass
Change the 2-deep ModeCloser test
Flesh out the test for appending ModalCommands
Implement ModalCommand#add_to
Refactor #add_to() methods to use higher-level API
Use API: push_command(), push_mode(), pop_mode()
Use the push_command() method instead of <<
define Object#add_to, remove ModalCommand mixin
Proof of concept formatter for simple modes/commands
Create a basic ExplainFormatter
Make Dictionary.lookup aware of modes