Support functions and execution file for 3D iteration.

updated makefile.
These support functions can be templated out into an execution monitor type class. See how CUSP does it.
Backed out wrong correction.

Added iteration stats struct to keep track of n iterations and final error