moved oauth provider out of lib, into local code - so we can modify