Add Model Checker and stronger error checking