Introduce CompilerConfig.

CompilerConfig defines the "attributes" of a Compiler. It contains
target information, configuration, etc. to setup an instance of
Compiler (more specifically, a instance of LLVM TargetMachine used by
the compiler.)

CompilerConfig together with bcc::init::Initialize() will replace
current Compiler::GlobalInitialization().

Change-Id: I879b189632093de9bbef130eaa5e74502536951c
8 files changed