Return promise object instead of using callback & errback
Set $.ajax() directly to cache instead of creating new deferred object