If this is landed in 1.x, would it make sense for the core JsonRest store to use dojo/_base/xhr while the observable JsonRest store uses dojo/request? In the observable store, all of the methods inherited from the core store would be returning a Deferred while the new methods would all be returning a promise. Users would be able to use dojo/request/registry to register providers for the observable JsonRest URLs, but not for the existing ones.

If it doesn't really matter that they're inconsistent, I can switch to dojo/request here.