sys.exit → raise Error
Raise errors instead of calling sys.exit
, so we have a chance to react to the error. Added tests for some errors, which increased test coverage by about 3%.
In some cases, the code was catching an error and then stopping, so I reverted to letting the error propagate upwards. If it isn't caught, the code will stop anyway.
Will close issue #9 (closed).