Slowly making my way towards having separate classes for various memory models.
Created SmackRep factory.
Refactored declare globals and pushed that into SmackRep.
Refactored addModifies into SmackRep.
Refactored ptr type into a virtual getter method.
Minor fix to how ZERO is created.
Moved prelude into C++ code.
Factored out 2d memory model into a separate class.
Merge branch 'memmod' of github.com:smackers/smack into memmod

Conflicts:
	lib/smack/SmackInstGenerator.cpp
Fixed a small bug in handling malloc's argument.
Factored out function pointer declaration into SmackRep.
There was an error in the regression script related to the number of errors that should be reported for array_free_fail example.