The tests were designed on Windows, and hadn't accounted for differences in the representation of \n on Unix (at least on the test suite side.) Along the way streamlined the http header parser and added a timeout to the coroutine::util::gets_safety function.

All tests now work on Unix. And they don't hang. Yeah.