FYI the tornado tests use unittest2 on python2.6, so we have 2.7-level features like `assertIn` (which gives nicer error messages when it fails)