async.py:  Added some calls to `gc.collect()` at the end of various `shutdown()` methods.  This ensures that leftover file descriptors get cleaned up properly.  This should close issue #355 (https://github.com/liftoff/GateOne/issues/355).
core/log.py:  Removed the various `go_logger()` calls a the bottom of the file as they are not needed/unused.
core/server.py:  Changed a bunch of direct calls to `io.open()` and `open()` to use the 'with' statement.
Everywhere:  Changed the use of `tornado.ioloop.IOLoop.instance()` with `tornado.ioloop.IOLoop.current()` to make better use of the Tornado APIs.