minor
refactor to a single file
use cli_state
move cli_commands to a separate module, provide tab completions and documentation!
adjust
regenerate