How does Git hub work? what is a branch?