Add ability to run tests selectively.

 * Anything on the command line after "run-tests.sh" will be understood
   as a regular expression (if there is more than one argument, they are
   concatenated, with spaces in between) and only the tests whose "full
   names" match that regexp will be run.  The full name of a test is the
   "describe" string plus a space plus the "it" string.  Note well that,
   unlike the test-runner output, there is no colon in there.

 * run-tests.sh and run-tests.js now correctly handle being invoked from
   an arbitrary directory; the cwd does not have to be the project root.

 * Shell portability fixes for run-tests.js.
Import Jasmine 1.3.1 for better error reporting.
Fix jasmine.ConsoleReporter.specFailureDetails to actually do something useful.
Do not use github.com in tests.
Add a -v/--verbose option to run-tests.{sh,js}.
Eliminate console spam during normal test execution.