initial version from http://www.boost.org/doc/libs/1_54_0/doc/html/boost_asio/example/cpp03/http/server/