Remove the OSD-specific portions of the OpTracker interface

This branch creates a new TrackedOp type (which OpRequest inherits from), converts the OpTracker and OpHistory classes to work on TrackedOps (with some templated functions for using OpRequest or a forthcoming MDSRequest or whatever else gets implemented), and generally makes it independent from the OSD.