Facia-tool OAuth 2.0

This changes `facia-tool` to use OAuth 2.0 from Google instead of OpenID.

It uses the library [`play-googleauth`](https://github.com/guardian/play-googleauth). There are updates that need to go through on that library such as https://github.com/guardian/play-googleauth/pull/7 and https://github.com/guardian/play-googleauth/pull/3. The new version should be either `0.1.5` or `0.1.6`, so ignore the version in `Frontend.scala` for now.

This also provides an `avatarUrl` for the logged in user.

#### What's Next
- Move `preview` onto a `Filter`
- Move `admin` onto `play-googleauth`
- Clean up all the old `Identity` stuff


#### Technical
This was originally meant to be a `Filter`. After trying to implement it as a `Filter`, I realised it could not be done as play (`2.2.x`) has no way of appending to the session, meaning that it was hard or impossible to update `lastSeenKey` in the `Session` without overwriting the `Session`. I changed to `Actions` and stuck with the `play-2.2.x` branch from `play-googleauth`. In the meantime we upgraded to play `2.3.x`. After this I decided to switch to `master` from `play-googleauth` which is based on play `2.3.x`. Then I realised that play `2.3.x` introduced `addingToSession` and `removingFromSession` meaning that the original method of a `Filter` would work. But this is going to stay as `Actions` for now.
Yes, I thought about this when adding it in; which is why I was asking you yesterday about new properties.
I was thinking it has to be mandatory otherwise there is no point starting the app. I could just use an empty `String` instead so that it will run still. Actually, let's do that. Let's delete getMandatoryString`.