Remove SlabAllocator

Removing the `SlabAllocator` will allow for more aggressive performance enhancements.

EDIT: I have removed a couple commits from the set that weren't directly related. While this does introduce a small performance regression for requests of small packet size, it seems `make bench` is exasperating that discrepancy. If the benchmarks are run by hand (running `benchmark/http_simple.js` and pointing `wrk` to the appropriate url) the performance difference is easily below 5%. And this is only for small (i.e. <= 1024 bytes) requests. This patch is a launchpad to several other changes. Some of which include:
* Allowing the character encoding to propagate down to `StreamWrap` to remove any redundant object creation.
* Give more flexibility to `StreamWrapCallbacks::DoRead` callbacks so objects (either buffers or external string resources) don't need to duplicate memory before being used.
* Use those custom callbacks to internally buffer key items, such as HTTP requests. This is advantageous because we'd drop the step of creating a buffer then passing it back to `http_parser`. Instead we accumulate until all headers have been received.
* Easily create data "pass along" (I'm sure there's a more correct term for this). Like a pipe, except after pointing the source to the destination in your script the data itself never needs to reach the js level.