Encode description in UTF-8 instead of ASCII.

Threw an exception if description contained non-ASCII characters.
Open description file in binary mode

This fixes a Python 3 incompatibility introduced by 5284317, because
bytes cannot be written to a file not opened in binary mode.
Iterate over multiple repo pages

Fixes issue #2.

The GitHub API sends back a "Link" header with each request, but it
requires some fairly unwieldy code to parse.

The easier way is just to keep going until GitHub doesn't give us
anything any more (it returns "[]" if there are no more pages). This
results in one more HTTP request, but the time it takes will be hardly
anything in the larger context of the program.
Merge branch 'upstream/master'

Conflicts:
	gh-mirror
Print repo URL.