Bundle a patched version of Rocket

This includes a bundled version of the Rocket webserver, with patches
applied that cause it to properly close it's listening sockets so that
err doesn't hang on executing `!restart`. Specifically, the included
version of Rocket here in a monolithic build of the version tagged
1.2.4-p2 in http://github.com/zoni/Rocket
Make webtest a hard dependency

Previously, webtest was only required when running this tests. Commit
aaf704b6 made it a requirement for the Webserver plugin however, so it
should be listed in requirements.txt as well.
Fix run_tests.py for Python 2.7

Looks like Nose is ignoring the argv argument passed to nose.run,
which in some cases would make it fail to pick the converted sources.
Add bot command to generate SSL certificate directly from Err

This adds the command '!generate certificate' which will generate a
self-signed certificate directly from Err, instead of relying on a
seperate script to do it. Relies on PyOpenSSL but checks to make
sure it's installed and simply gives a warning when it's not, so
PyOpenSSL doesn't become a hard dependency.
Make travis install PyOpenSSL before running tests

It is needed to test the `!generate certificate` command.
Improve error checking and handling around storage

This will ensure a plugin which failed to successfully run it's activate
stage causes an exception when trying to close storage during deactivate.
Merge branch 'release_prep' of git://github.com/zoni/err into zoni-release_prep

Conflicts:
	scripts/generate-selfsigned-sslcertificate.py
Small unit test breakage after the engrish corrections