Now using storefront API for all requests; no more scraping.

* is_owned has been added to storefront API.
* All requests are batched - there should never be any singular requests to API made (unless it's the only app id uncached)
* Removed some deprecated methods during this change.
* Important new object: appid_promises.  Any method that needs to wait on new app data -needs to put in a request for that data via get_app_details and bind to appid_promises[appid].promise.done().

----

With the appid info requests all batched together an empty-cache load appears slower, as it is waiting for all the appid data before displaying stuff on screen; whereas the previous implementation looked faster because it was fetching single apps at a time. This is, of course, more reliable however; and better in terms of bandwidth.

When loading only a few appids, e.g. search suggestions or a new ajaxy-tab being loaded, it's much quicker than previously - simply because of not having to load an app page alongside an api page.