error handling and messages
Throw errors when parameters are outside the design range.
Example: Sibyll can only handle target nuclei up to A=18. For higher values the cross section routine stops and complains. Currently this output ends up in a text file. It would be better to throw an error message in the interface.
Mechanism to pass error messages between external modules, e.g. sibyll and core framework would be good.