Child logging

Appends a unique requestId to each express call, and exposes a child logger to the req object.
In my head I though the existing output from this middlewhere was camel cased, but it is hyphenated. If you look at the meta for other data points (user-agent, remote-address), etc. For the sake of consistency, i'd probably change to "request-id", but maybe expose it to express as req.req_id?