Catch other exceptions (e.g. util.Abort) in parse(), too.
This has the benefit of removing duplicate catching of AmbiguousCommand
and UnknownCommand, and keeping all exception handling together.
#!/bin/sh
hg
hg -q
hg help
hg -q help
hg add -h
hg add --skjdfks
hg help diff
hg help status
hg -q help status
hg help foo
hg skjdfks
exit 0