graceful counterpart to http.Server methods

this pull request adds three new API functions that pose the graceful counterpart to http.Server methods.
the use cases for this change is obvious, but i am not sure if the new API is not too crowded as a result.
maybe only the Serve method would suffice? please do think about what balance of convenience and feature completeness is reasonable.