Hi James
Having read most of the login/signup/sign-in documentation from end to end over the past few months (paired with several different implementations), I have most of it sorted for myself.
Early on, what was missing was what the difference between Firebase, Google Identity Toolkit, Google Identity Platform and the various Google+ Identity APIs. I walked in knowing what I wanted: "I have users with email addresses, some of those email addresses are gmail.com, how do I allow them to login to my app with a single click on the Google button? Similarly, my signup only required a validated email address, surely a single click on the Google button is enough to allow that." What I was met with was a choice between what appears to be 5+ different methods of implementation, some of which are enabled by default on my exiting Google Cloud Console others require me to enable new things (Google+) and others still require me to create a new account (Firebase). Some enable me to easily allow me to easily create a user experience that all of my users will be familiar with if they've ever used Google login on a web/mobile application, others require me to implement major portions of the front end of that experience myself (a mobile friendly pop-up for the oauth dance and subsequent token handoff).
I ended up using Google Sign-In for Websites[1], which offered the best trade offs. It's easy to implement on the front end but allows self-management of users on the back end.
I've used Firebase and enjoyed the experience. My own confusion early on had little to do with Firebase or what it offers and more to do with the painfully obvious truth that Google is not of one mind (as any organization of it's size would struggle to be) when it comes to how outside entities should consume it's identity services.
1. https://developers.google.com/identity/sign-in/web/