COFFEE: only initialize coffee_dir in Autotuner

Also fix a parallel race condition trying to create coffee_dir.
COFFEE: remove duplicates from transformed code
COFFEE: move loop merger in a separate class
COFFEE: code refactoring
COFFEE: overhaul the symbolic executor system
COFFEE: split doable within the same loop nest
COFFEE: move merge_ranges in a separate methodn
COFFEE: rewrite expressions only if present
COFFEE: fix isdigit bug when tracking zeros
COFFEE: re-implement the zero-tracking algorithm
COFFEE: change autotuner's compile options
COFFEE: fix appending pragmas in non-mixed case
COFFEE: fix generation of BLAS when autotuning
COFFEE: restore tensor layout only if needed
COFFEE: make plan_cpu profilable
COFFEE: add debug functionalities to autotuner
COFFEE: initialize tmps if needed by zero-removal
COFFEE: change some variable names and comments
COFFEE: fix bug when merging loops
COFFEE: fix/improve comments for sphinx