switched from an array of buffers to memcpy and a char* array, it's the only feasable way to support SSL and compression