Handle errors with exceptions and catch them in main.cpp
Implements exceptions to throw instead of calling exit(i)
to quit Kira when an error occurs, see #48. They are caught in main.cpp
. This allows to unwind the stack in contrast to simply exiting.
In addition, I added a few additional cases in which Kira throws to limit unwanted behavior. Especially it now throws when files specified by the user are not found, see #49.