removing some libevent-specific stuff and replacing with more generic stream-filling code. also, doing manual stream wrapping/filling since its more efficient that way anyway (less data being copied around)
just kidding, adding streaming back in, but still keeping same principals of storing a buffer on the side and filling the stream with it once the request is finished.