Reorder tests by length

Add options to run the slowest tests first, using data stored by the SQL reporter.

Have the SQL reporter store `class_setup`, `class_teardown`, `class_setup_teardown` fixture results in the database.

Similarly, have the client and server test runners shuffle fixture results around.