common-cli: CLI framework

Are you planning to add more docs to explain how the completer works? Looking at the following methods in this class is difficult to understand how it works.