modernize pointer handling

use shared_ptr instead of manual delete's
abuse the preprocessor to keep template boilerplating at acceptable levels
changed: make the matrixops helpers a normal c++ class

no templating going on here, no reason to keep it header only
added: option to jsut run a mesh inspection
cosmetics
a bunch of debugging options