Benchmark

If you want to view a good diff, try doing a `git pull upstream release-0.10` into your benchmark_v3 branch, then reviewing this comparison.

The basic changes I made:
* Move files into shared/benchmark
* Create a command, main/management/command/benchmark.py, that:
    * Gets parameters from the commandline
    * Chooses a test class to run
    * Runs that class on the specified # of threads
    * Prints the output to the screen after the thread completes, and also saves to a text file.
* Abstracts out some common logic for all commands (setting a random seed), or selenium-based commands (set a url, user, password)
* Makes the base a bit more robust, so that if _setup, _execute, or _cleanup throw an exception, everything still completes (ignoring the iteration with the exception)