dwsjoquist/extract sd web service mock queue methods

create SDWebServiceMockResponseProvider protocol
extract mock response queue implementation to it's implementation class
ensure existing SDWebService create default provider instance when needed to mimic current behavior
Is this safe, returning the ivar while outside of the synchronized? Would it be better to assign to a local in the synchronized block, then return that local? Concerned about race conditions.