wrapping socket/stream buffering in util make-buffer/write-to-buffer/buffer-output functions. replacing underlying buffering system with fast-io (was flexi-streams). also undoing write buffering in write-socket-data...calls on connected sockets now just pass through to uv_write. however, *buffer-size* is now exported, and might aid in cutting down calls to uv_write if set to a large enough number
default buffer size: 128k (up from 64k)
nil fix in type spec
adding back in (commented out) code for buffering writes. i want to have it handy for easy testing
adding switch to turn write buffering on/off (*buffer-writes*) and exporting it
making write buffering switchable, and discovered a really nasty bug (possibly in libuv) where sending data > 65536 bytes in uv_write causes data overlap issues across sockets. need to leave *buffer-size* at 64K for now
Removed invalid declaration.
Avoid event loop cruelty upon unhandled conditions in callbacks.

This is for the case when catch-app-errors is set to false (the default).

Provide restarts for aborting the callback and exiting the current event
loop safely (without unwinding the stack through uv_run() call).

Use *sldb-quit-restart* to set the default debugger 'quit' action when
SWANK is available.  When using REPL integration, default to aborting
the callback; when using plain event loop, default to exiting it
safely.