Renamed error-flow to something better.
Re-wrote all request handling to be executed within the failure monad.