add Negroni middleware implementation
move negroni middleware to separate path