[API breakage] cpoll: add StreamBuffer; 2 minor bugfixes:

* [API breakage] use std::bad_alloc to indicate memory allocation failures instead of std::runtime_error
* MemoryStream: do not double-free buffer at destructor if the user calls close()
misc additions to /test/
iptsocks_new: call decrement_host when a connection has been closed; added command line feature