Switch to semantic exit codes for CLI#halt

`CLI#halt` was being invoked in several places with an exit code of -1.
Unix exit codes are traditionally limited to integer args in the range
0-255 [1][2], and out of range exit values result in unexpected
behavior. This commit reverts the error codes to use the catchall error
exit code 1, although if one is feeling fancy an exit of 65 (EX_DATAERR -
input data incorrect) may be valid in some places.

[1] - http://en.wikipedia.org/wiki/Exit_status
[2] - http://tldp.org/LDP/abs/html/exitcodes.html