Update the remote repository retrieval to handle organizations.

Repositories for organizations are on a different endpoint then
for users. This requires us to make more requests.

Now, we go and ask for a list of organizations a user is a part of.

We then build an array of endpoints:

- For each of the n organizations the user belongs to
- + the user endpoint

We then go and fetch this asynchronously. `listRemoteRepositories`
still returns an array of Repo's, so nothing outside of `github.go`
needed to change.

This also added a apiRequest function to make the code a bit DRY'er.

This fixes #7.