Updated authentication methods to login v2

@katowulf - Please review but **do not merge**. I want to get your thoughts on everything up to this point. There is still more work to be done here: testing (I am going to need to updated `mockfirebase` first...), removing Simple Login code, taking authentication out of this user management file, etc. Please provide any feedback on how things are structured though.
Add an onAuth() method. This should not resolve until initial auth status is determined asynchronously from the server. After that, it should resolve immediately with current $getCurrentUser() value.