use cstringio rather than += on string in libev

The current LibevConnection class is using a string variable _buf, this is used to build up a message from a socket, it is using a += to append to it, this is really slow especially when using blobs.

I have modified it to use a cStringIO and updated the tests, they all seem to run.

Use this or use it as a suggestion for an alternate implementation, thanks!