Consistently use dojo/json for JSON, so that it works on IE5-7
Add a two-arg observe method
Return allLoaded instead of cachingStore's fetch, to ensure that the correct result is returned