Remove unused serialization provider interface member
Refactor some methods on the serialization provider to instead be properties/methods on the serialized item/reference itself.

This will reduce the need for dependencies on the serialization provider, as well as make the code easier to read AND the unit tests slightly less confusing as the trees they build are more obviously hierarchical in nature.