Why not simply integrate with Github's authentication functionality instead of creating a separate username/password system?