minor cleanup & refactoring
removed SymbolicConstraint#rename
fixed the computation of freshConstants & freshVariables in the Java backend
enabled CheckVariables step in SpecificationCompilerSteps
fixed cdd_spec to conform to fresh variables naming convention
attempt to orient rule variables right before substituting the RHS of a rule
fixed ResolveAnonymousVariables to deal with anonymous fresh variable ?_
forgot to restore substitution when orientSubstitution failed
suppressed checkstyle on Java 8 syntax for now
reimplemented SubstitutionTransformer based on CopyOnWriteTransformer
extracted common code in SymbolicRewriter
attempt to fix expandPatternsAndSimplify to ensure the result is fully simplified
simplified several checks by refactoring
addressed Andrei's comment
upgrade checkstyle maven plugin and override its dependency to use checkstyle 5.9
Merge pull request #1094 from yilongli/cleanup-ml-prover-5

Cleanup ml prover 5