Save and restore buffers

Issue #4: Proper state saving & restoring

TODO: Give bouncers a sec or two to start joining channels after
getting connected. If that happens, the saved buffers shouldn't be
restored to avoid restoring a buffer that was closed using another
client meanwhile.
Quit gracefully on app close

No more "remote host closed the connection"