Fix crash on sending a std::string larger than 2GB

The socket::send(std::string) function calls send_raw which has a signed integer
as the buffer length. With messages larger than 2GB this causes the size_t
passed to ZMQ to be a large positive value near
std::numeric_limits<size_t>::max(). This is fixed by changing send_raw to take
a size_t instead of an int for the buffer length.
Merge pull request #46 from cmdevries/master

Fix crash on sending a std::string larger than 2GB
Add some method to the poller that allows to use zmq_pollitem_t directly
Reactor class; We can register socket or fd and have callback called when watched events occur.
Simple tests
Add method remove(zmq_pollitem_t) to poller
Merge pull request #47 from xaqq/zmq-reactor

Zmq reactor