output up to date status on a push if nothing has changed for a ref; update gitifyhg tips on a push; refactored ref string parsing

Hopefully the commit message is self-explanatory. Tests all pass, including new test.