Removed templating where possible to allow dynamic construction

Removed from equation elements, problem and command line args object.

This allows us to choose the mesh (and therefore element) type at runtime
much more easily.

Also commented out some of the magnetostatics stuff.

Possible implications on speed (when optimised) because the dimension is
not "compiled in" anymore. No idea if this will make any real difference
but the increase in flexibility is probably worth it. We can always hard
code the mesh (and elements) in specific drivers if there is a major effect
and the speedup is needed.