Add attempt at argument parsing system

Adds the `smartparse` and `alias` decorators, which attempt to clean up the
arguments to a function/command based on the order of arguments and the signature
of the function.