Fixed some issues running tests in parallel

Note: this doesn't solve all of brittleness in the travis build, but it does address some of it.  I'd like to have this integrated in and then log remaining failures to a new issue which we try to resolve separately.

There was an issue where running multiple tests using the mock S3 server could fail because the port needed for the S3 server looked open but was in use by the time the S3 server requested it.  To avoid this problem, use a different set of ports than the mock SMTP server, a larger set of ports, and a slightly different in-use test.

As an additional issue, some tests place data in GridFS assetstores, and these assetstores were not being reset or cleared.  There are now dropped prior to the start of the test.  As part of fixing this, I removed the issue with running the server_file and server_upload tests simultaneously.

I had a bug in how I was requesting the GridFS web client test, so it was just running the filesystem test a second time.

To aid debugging, I added the use of an environment variable 'EXTRADEBUG'.  This is a space-separated list of extra debugging options.  If you set this to 'mocks3' and or 'cherrypy', that service will log all of its URI calls.