fleshed out http server