asyncio: Refactor selector to callbacks instead of coroutine
asyncio: Refactor selector to callbacks instead of coroutine

Restarting the event loop to "cleanly" shut down a coroutine introduces
other problems (mainly manifesting as errors logged while running
tornado.test.gen_test). Replace the coroutine with a pair of callbacks
so we don't need to do anything special to shut down without logging
warnings.

lilydjwg/tornado,dongpinglai/my_tornado,lilydjwg/tornado,dongpinglai/my_tornado,mivade/tornado,dongpinglai/my_tornado,dongpinglai/my_tornado,tornadoweb/tornado,mivade/tornado,tornadoweb/tornado,mivade/tornado,dongpinglai/my_tornado,lilydjwg/tornado,tornadoweb/tornado,mivade/tornado,tornadoweb/tornado,mivade/tornado,dongpinglai/my_tornado,lilydjwg/tornado