command.alias now accepts option

The one option introduce now, `deprecated`, allows for flagging
an alias as being deprecated.
command: respect input's can_finish

Instead of only respecting a `false` return, also respect a
return of `true`. Makes replace command work correctly when the
replacement is the empty string.
Rename some commands for consistency's sake

The old commands are still present, but deprecated.