DDF-534

Some initial cleanups and the start of the work on making options / arguments common across different console commands.

This isn't enough to solve DD-534 completely.
I'm not sure if this comment requires changes to the code, or is just explains some background. If it does require changes, can you be more explicit about what the requirement (and suggested solution, if any) is?