Moving Microsoft.AspNet.Diagnostics.Entity to this repo

There are two commits in this PR
* First is a verbatim copy of the code from EF repo
* Second are the updates required to get the code and tests working in this repo

There is a separate PR in the EF repo to remove the code from there.
Done (and so glad we got rid of this code in the EF repo)