Extended ctl framework API with add_command_under_category.

This change is backwards compatible (add_command still works). This change adds the concept of "categories" into omnibus-ctl. Categories allow for more logically grouped output in help.

When you add a command to ctl via add_command_under_category, it will ask you to pass a category. This can be an existing category (by default, there are now "general" and "service-management"), or a totally new one (generation of that category will happen automatically).

Now when you type `*-ctl help`, it will output all commands, but grouped by category. This will allow users to find commands easier, and view things more logically. The motivation for this arose from users complaining functionality did not exist that actually did, but people were missing the command in the `chef-server-ctl help` output.

Note that adding commands via add_command will still work, they will just be listed at the top of the help output without a category.