Support alternative auth method: use github.token if missing username or password

It was making me uncomfortable to store my GitHub password in a plaintext environment var, so I added support for authorization using a [GitHub auth token](https://github.com/blog/1509-personal-api-tokens).  The token can be supplied as an option, or if you don't specify a username, password, or token, it will default to using the `github.token` [git global option](https://github.com/blog/180-local-github-config).

This PR introduces  `exec-sync` ([link](https://www.npmjs.org/package/exec-sync)) as a new devDependency in order to get the `github.token` value synchronously.