CamelIMAPXServer: Use a main loop in the parser thread.

The "while" loop previously used in the parser thread just blocked the
thread until incoming data became available.  Using a GMainLoop allows
us to add other event sources, like periodic timeouts to help keep the
connection alive without relying on Evolution.

I'm also hoping this will help eliminate the separate thread for IDLE,
since it now uses a GMainLoop as well.  But I don't quite have my head
around all the implications yet.