Re-checked in heat benchmarks

By checking them in, it'll be easier to track, diff-wise, updates/fixes made to
the files to match the new interface.
Updated heat_2D_P to the new interface

I ended up removing the gen_plan calls since these are no longer supported.
Benchmark seems to run correctly as expected, so that works out.
Partially updated tb_heat_2D_NP_zero

It now compiles and runs, though the reference and pochoir implementations
don't produce the same results. This benchmark seems to work fine in the master
branch, so I'm not entirely sure as to what's off. When removing the heat_2D_fn
argument from heat_2D.Run (triggering the plan generator) the generator
produces uncompilable C++ code.
Partially updated heat_3D_NP

It compiles, though we run into the same issues as with heat_2D_NP_zero. My
guess is it has something to do with registering domains under the new
interface.
Updated heat_2D_P_diff_slope

Done so by removing the manual plan generation, since this is now run
automatically by Run(T).
Updated heat_2D_P_macro_h

Done by removing manual plan generation, since this is now automatically done
by Run(T)

One problem with this particular benchmark is that there are no correctness
checks, so there's no way of telling whether it's actually doing what it
should.