Add context propagation middleware

/to @ritch @bajtos @piscisaureus 
We somewhat need to have a global (variable/module) or access it via an existing one such as process. loopback.getCurrentContext() seems to be fine (internally we can set it to process.context.loopback too). It indicates that the context is created by loopback and only available via loopback. 
I wonder how we pass the context to strong-remoting, loopback-datasource-juggler, or connectors though. There are a few use cases, such as:

1. Expose a REST API via /api/users/me (me is the current logged in user id)
2. Add a find method to a model which references the current user id
3. Use the current security context to talk to facebook or other backend systems

Maybe each module should reference the context via <myModule>.getCurrentContext() and loopback can inject its implementation onto them.