Use MY_CXT framework to store per-interpreter data

It's still not thread safe, but I must start somewhere...
Try to make the runloop thread-safe

Not tested with an actual multithread program, but can't be worse than what was
there before.

As an additional bonus, it does not start a new counter thread for every
runloop call, so it does not break in the presence of nested runloops.
Small refactoring
Add basic settings interface

For now it allows setting output file, sampling interval, and whether to start
the profiler at all, only at load time.
More things to do...
Add open/close methods to TraceFileWriter
Ignore build files when packaging the distribution
Add functions to enable and disable profiling

This rather convoluted implementation has the advantage that when profiling is
disabledk, the interpreter runs the normal Perl runloop, so there is no speed
penalty.

The double implementation (with and without trampoline) is maybe unnecessary
complexity, but since it's not user-visible, it can be removed at any time.
Basic tests, finally!