Switch to head-only ISL++
LLVM Linker cannot preserve source anymore
Use likwid tools for tracing
ISL++ doesn't require ::Wrap anymore
Fix: Cloning of declarations

This fixes a problem with a recent API change in LLVM. The llvm linker
does not preserve the source IR anymore.

Before that we had raw prototype functions and instrumented functions in
one module. After we finish the extraction process all the instrumented
functions got linked back into the main module. That destroyed the
raw function in the module and made us clone a raw prototype instead of
the definition.

We fix this by separating instrumented and raw functions into their own
module. We do not need the instrumented version anymore anyway.

In addition to that we did a bit of header cleanup. No function change
through that.
Fix likwid tracing regions
Reorganize tracked performance regions