Are these exit codes documented somewhere?  Maybe we can wrap them in some kind of enumeration to make them a little more readable/reusable while reading the code.