Move registerCommand() from Dispatcher to CommandDispatcher.
Add helper DescriptionBuilder class.
Remove Future, it doesn't make sense for repeating tasks.
Change anonymous class in DescriptionBuilder to an inner class.