Spec out command recognizers.  #21.

The command recognizers have become complex enough to warrant this.
Extend !a/!ao command regexes with parameter recognition.  #21.

Parameter parsing will be a separate step.
Group code modules by program.

Also introduce the cogs program, which runs various minor but essential
maintenance tasks.
ident is an item property.
Sort out the vendor code situation.

It doesn't make sense to have a toplevel vendor directory anymore: for
example, the redis-lua submodule has no relevance to anything but the
pipeline program.

This commit also restores the original relative path for the redis-lua
require.