Break out add/rm to separate module
Add test for defining and running cmd
Add richer alias support

You can now define aliases for not only a command name, but
also make the alias add flags or arguments to that command, e.g.:

    alias first_ten => 'list 1-10'

or something a little more useful...
add: add support for setting download-dir

You can now do add --download-dir /path/to/somewhere foo.torrent
to set the download_dir attribute from start.
Make cmds() return aliases as well
Config: support getting other section than _
cmd::add: error when no arguments given
Command: add debug statements
Add support for user defined aliases

In the config file, you can now add user defined aliases. It's
similar in behavior like the alias you may be used to from bash
et al. The aliases goes in to a [aliases] section of the config
file.

    [aliases]
    add_linux_iso = add --download-dir /srv/ftp/cdimages
Out: fix typo in pod. s/crap/carp/
Add more tests for command, including aliases
Add tests for cmd::torrent