Add nature number theory
An unknown Z3 message cause by z3 can't deal with quantifiers, we can catch models when it returns unknown or turn on MBQI to fix this problem
Clean up, back to original Red-black-tree testcase, because the bug is fixed
Capture --functions and --num-lemmas into testcases
Now, We only use lemmas when checking UNSAT, because we don't need it in SAT checking
Now, we now that we have to config `something'

Because Z3 instantates too much instances, but we don't need these
things.

I believe that cause by something called matching loops, one instance
creates another instances and the number of instances grow up extremly
fast!
Merge branch 'lemma-filter' into lemma-error

Conflicts:
	lemma-error/nat.scala
	src/main/scala/leon/solvers/z3/FairZ3SolverFactory.scala