Git remote fixes

More complete handling of git remotes that aren't named `heroku`. While there is a `git config heroku.remote` and we still respect that, few people use that and we should do our best to figure out their app even if it has a different name and they don't have a `heroku.remote` git config setting.

Fixes #49.