Google oauth

Sorry the PR isn't totally cohesive. I'm going to start going through each file before committing to decide whether to add it to a particular commit. Agree with what you said about this in your email earlier today, Arlandis.
Migrations come in pairs, a set-up and tear-down to revert it.