t: rose-suite-run: log options tests.

The new test file takes quite long to run, so I have added `-s` to the
`prove` command as a default. This should encourage late bottle necks to
start early.
rose test-battery: even more processes.
t:rose-suite-run: test `-O KEY` option.
Doc: fix typo.
rose.popen: print `return-code` instead of rc

Supersede metomi/rose#778, but use hyphen instead of space between
`return` and `code`. This should make it easier to parse.

Modify `rose test-battery` for the change.
Add string tests on a single file to rose-ana
Merge branch 'master' into t.rose-suite-run.05-log
Merge pull request #782 from matthewrmshin/popen-return-code

rose.popen: print `return-code` instead of rc
Merge pull request #777 from matthewrmshin/t.rose-suite-run.05-log

t:rose-suite-run: more tests
t:rosie-id: add test for final ID in a repository

A test to prove that `rosie id` will return an exception if the final ID
is reached in a repository.
Alterations suggested by Matt
Merge pull request #784 from scwhitehouse/rose-ana-single-file

rose_ana: add string tests on a single file
Merge branch 'master' into t.rosie-id.final
Merge pull request #783 from matthewrmshin/t.rosie-id.final

t:rosie-id: add test for final ID in a repository
rose_prune: user interface refresh.

Functionalities now divided into 4 settings:
* prune-remote-logs-at=cycle ...
* archive-logs-at=cycle ...
* prune-work-at=cycle[:globs] ...
* prune-datac-at=cycle[:globs] ...

The 1st two functionalities call the underlying libraries of `rose
suite-log` to re-sync the remote job logs, prune them from the remote
hosts, (and archive the cycle job logs).

The last two functionalities are to prune items in the work directories
and the share cycle data directories. Globs can be specified for each
cycle so that only matched items in the relevant directories are
pruned.
rose suite-log: source.html: fix undef suite title

Title was displayed as undefined. Now use an AJAX call to load the main
JSON file to obtain the information. This should be more robust than
having to rely on it being parsed as an argument from index.html.
rose suite-run: fix already running bad error.

Was returning a `IndexError: list index out of range`. Should be fixed
by this change.
rose suite-run: improve already running message.

Print "detected PORT-FILE-PATH".
t: rose_prune: now passes reliably.

Ordering of JSON files and dot files were making things unreliable
previously.
Merge pull request #787 from matthewrmshin/fix.rose-suite-log.source

rose suite-log: source.html: fix undef suite title