Remove some unneeded API calls and cleaned up error output

Also import missing croak().
Added API command debugging option
Escape JSON data on the shell cmdline better

This is a kludge, and I need to change it into using 3-arg open with a
pipe to avoid shell meta-characters messing things up.
Make sure external programs are present before trying to execute them
Added some more references to the documentation
Added notice about trying to modify immutable pull requests
Added login command

Now there is no longer any need to keep your cleartext password in your
git config file. I don't know if a token that allows you to modify your
public and private repos is any better from a security perspective, but at
least it should make people that care a lot about these things happier.
Various code cleanup
Make running of external programs more robust and consistent

The _run_ext() function also avoids using the shell, so it's not plagued
by problems relating to how to escape shell meta-characters.

The _qx() program is basically the same as qx{}, but it automatically
removes newlines in output depending on calling context.
Added ability to edit comment with $EDITOR
Bumped version to 0.1.0 because of new important features