Merge in progress OAuth branch

This branch is becoming a little long lived... It has a lot of constant work and folder structure work (most of which are not specific to OAuth). Merge into master and avoid this on future branches.