Factor out common front end code
Clean up naming of properties in examples
added RecordUpdateExprs to the grammar and AST
Code clean up
Perform null checks in ConstantEvaluator
Fix bug where constants were not checked for division by zero and related problems
Add TypeReconstructor to avoid re-using type checker
Merge branch 'master' into function

Conflicts:
	jkind/src/jkind/JKind.java
	jkind/src/jkind/JLustre2Excel.java
	jkind/src/jkind/JLustre2Kind.java
	jkind/src/jkind/analysis/StaticAnalyzer.java
	jkind/src/jkind/analysis/TypeChecker.java
	jkind/src/jkind/lustre/parsing/LustreBaseVisitor.java
	jkind/src/jkind/lustre/parsing/LustreParser.java
	jkind/src/jkind/lustre/parsing/LustreVisitor.java
	jkind/src/jkind/translation/compound/FlattenCompoundComparisons.java
	jkind/src/jkind/translation/compound/FlattenCompoundTypes.java
	jkind/src/jkind/translation/compound/RemoveNonConstantArrayIndices.java