Besides having nicer errors in the case where the code is not compiled, we
should also have nice errors when requirements are missing (e.g., missing cmake,
make, nmake, cl, gcc, ...)
Quoting Malte from issue67:
> In the cases where fast-downward.py fails to find a file (e.g. if we failed
> to compile the code first), it prints a nice error message regarding what has
> gone wrong, but it also prints a traceback. Perhaps we should get rid of the
> traceback at some point.
I guess we want to keep the traceback in cases where something goes wrong for
reasons that we did not expect. I suggest we add some custom error classes,
throw these instead of IOError, and catch them in the main file.
To avoid conflicts, this should probably wait until we merged issu67.