Refactor http codebase

This change-set tries to optimise the way the http related code is
organised for better readability and extensibility. It uses
streadway/handy as the JSON based logging middleware and in the same
fashion implements a metrics middleware to expose prometheus based
telemetry.