Store branch heuristic info in metadata.
Changes to CMake stuff.

Trying to get extensible interpreter to compile out-of-tree; failing.
Gitignore build directories.
Log branch takenness.
Compile/annotate/run script.
Associate branches to addresses.
Use release build of llvm tools.
Name branches; only emit info for conditional ones.

We actually name the basic blocks which are terminated by the branches,
because LLVM does not allow us to name instructions that return void
type.
Script to make CSV from heuristics and trace data.