Added support for GitHub's OTP

This is pretty hacky but there are no nice options, that I can see. It could be implemented inside the `GitHub` class but that'd require changing how re-requesting credentials is done. I'd have preferred to check for OTP inside `callbackGet()` but the HTTP headers are inaccessible there.

Fixes #2381 and #2280