disposal and internal constructor

Made Diagonistic Trace support Idisposable to allow for the reader
writer locker slim to dispose. Added internal constructor to
DbResourceProivder to allow for easier testing.