add bunch of middleware documentation