Switched to using customized exception classes from raw sys.exit calls