(PUP-2505) Implement DELETE verb for HTTP routing

This builds on top of GH-2655 by adding some tests and also extending it so
that any unknown HTTP verbs recieve a 405 response rather than resulting in an
internal server error.