Retargetable

Implements support for specifying target triples and CPU and fixes a few issues with the LLVM codegen. Renames --target to --codegen.

With this, the LLVM code generator performs optimization internally and outputs object files directly, removing all runtime dependencies on LLVM. Note that there is not yet any built-in support for building, finding, or linking an RTS for non-native targets.