Implemented static-vectors!

This is mainly a speed/resource improvement. Instead of copying data,
byte-by-byte, to/from C, we can just read/replace into a lisp vector and
pass the pointer around. very nice. also split out our main c-buffer
into two buffers (input/output) which are instantiated as thread-locals.

also, updating hte code/tests for wrapping FDs. unfortunately this no
longer works in windows as it did before. this is a libuv limitation.
the official response is "use a poller" which probably makes more sense
anyway. guess we'll hav eto wrap pollers next...