#884: rose cli: bash programmable completion

This adds a script to enable bash programmable completion for rose/rosie commands. It closes #884.

By default it:
 * gets a list of subcommands via an ls of the `$ROSE_DIR/bin` directory
 * parses the `$ROSE_DIR/bin/rose-$SUBCOMMAND` script help to extract a list of options for a given SUBCOMMAND, including whether or not they accept arguments
 * passes the completion back to bash for filling out option arguments and arguments

It has custom logic to:
 * autocomplete particular option arguments (or just arguments) of particular subcommands - for example, to find the arguments to `rose suite-run --opt-conf-key=` for a given suite.
 * get the help for commands that use the interface from other Rose commands - e.g. `rose task-run` contains the CLI of `rose app-run` and `rose task-env`.

@matthewrmshin, please review.