Rename task -> command

This pull request started with the desire to rename "Tasks" to "Commands" in the help output. Once I started pulling that piece of string, it led me all the way here. This should be fully backward compatible and is mostly an internal change, but it's a big one that covers a lot of area, so I'm submitting it as a pull request instead of applying it directly to master.