Make SP reslover something that can be overridden.

This allows us to specify something that can resolve SPs rather than just having a setting.