Finally has complete auth workflow