add encoding directive to API POST payloads

References #235
respect $GITHUB_USER & $GITHUB_PASSWORD

Fixes #245
ChildProcess.posix_spawn= isn't always available

References #257, references #247
fix `pull-request` with Unicode chars on Ruby 1.8

The problem was that the dumb JSON generator simply dumped strings with
Ruby's `inspect` method, which on 1.8 generates escape sequences that
are incompatible with JSON.

Now strings are dumped simply as they are, with only a handful
characters escaped (double quote, backslash, whitespace).

Fixes #235
update History
have `fork` set up a remote even if own fork already exists
simplify checking for existing fork

 - performs a single API call instead of 3
 - simpler handling of parent repo data
 - less brittle implementation

Closes #257, references #146
remove unnecessary endpoints in `fork` tests
`create` command uses API response to assign remote URL

This ensures we end up with the correct capitalization of user's login
name, and gives the opportunity to the server to change the project name
without having us choke on it.

Fixes #263
`create`: don't choke if current directory name contains spaces
don't reference SocketError before net/http is loaded

Tries to fix #261
get cukes passing on JRuby
fix hub on JRuby

Fixes #252
update History
fix `browse` on Windows
update History for previous commit
document real fix for slow prompt

Fixes #254
man page: document $GITHUB_USER & $GITHUB_PASSWORD
release 1.10.3
persist correctly capitalized login name for the user

Fixes #263