Async Pong support

The idea is to cause CursorHold from another thread.

There are two implementations:
 - GTK - listen on a file descriptor
 - TTY - inject FEFF in the tty and map it to CursorHold (requires patched vim)