Add test on toleranceMoveToCore and toleranceToInterruptSimulation Values

Raise an error if toleranceMoveToCore > toleranceToInterruptSimulation.
Closes #299
Add a check on toleranceMoveToCore existence if user forgets to provide one in the input file.

Set it as None by default then check that it's not None.
Before this change the error message was unhelpful: "model requires at least 1 argument (2 given)."
Closes #302
Edits to RMG input file parsing. Greater use of InputError class.

To help users with invalid input files (and, down the line, to help a UI) it's better
to raise InputError every time there's a mistake with the user's input file, rather 
than sometimes an AssertError (should only be used for bugs in the code, not mistakes in the 
input), and sometimes a TypeError (definitely not helpful for a novice user to interpret).

I also replaced some tabs with spaces, re-ordered the parameters in saveInputFile to match
the order in which they're read.