refactor core.oauth

compatibility with new freedom v0.6 core.oauth API

2 oauth providers introduced based on chrome.identity and chrome.webRequest.
oauth.identity passes the integration test, but no testing setup for oauth.webrequest yet 
(chrome.webrequest only available on Chrome extensions and current selenium test is a packaged app)

Can we add an issue to figure out how to test this? This is presumably a thing where uproxy would take this class and then provide a shim to this logic between app and extension. Is there a strategy for how that will work?