use static_cast minimally, avoid reinterpret_cast where possible
don't do math on void*, it's gcc-specific and warns
illegal task::join() throws system_error() just like illegal thread::join()
std::forward in throw_if
implement connection timeouts for http, and ensure sockets hit with timeout are discarded
net tests for http request timeout and connection refused
on close(), log(DFATAL) if errno is EINTR; on Linux it can't happen and appropriate action is unknown
only close an http client socket if it's open
add should-never-happen sanity check of cached stack size
Merge pull request #68 from chipdude/chip/misc

A motley collection