Refactor Overlay, HTTP::Server for universal port

These refactorings are required to support the universal port.
Reviewers: @miguelportilla, @scottschurr

Ignore the top 3 (eefc5d9..0ebc9ee) they are from another pull request.
Easiest to just read the description of `boost::asio::streambuf` which offers the same behavior:
http://www.boost.org/doc/libs/1_56_0/doc/html/boost_asio/reference/streambuf.html