common-cli: CLI framework

I added some more docs to CLI to explain how to configure completers and commands. Still not that much about how to implement your own completer though.