Add support in AsyncTestCase for detecting undecorated generators.

Fix a test that was not being run because of this issue.
Raise an error if IOLoop.start() is called while it is already running.
Improve the stack traces given for timeouts with @gen_test.