almost complete github oauth authentication