Introduce the asmjs-unknown-emscripten target triple.

Notable changes from le32-unknown-nacl so far include:
 - Set i32 as the legal integer set, to help the optimizer avoid creating
   needlessly inefficient code for asm.js.
 - We can use llvm.pow.
 - Don't predefine __ELF__ or __pnacl__ so that we don't need to undefine
   them later.
 - Do predefine asm.js and Emscripten macros, so that we don't need to
   define them later.
 - Don't provide __has_feature(pnacl).
Define an Emscripten toolchain.

This is pretty minimal right now; eventually this may subsume code currently
in the emscripten wrapper scripts.
Merge branch 'master' of github.com:sunfishcode/emscripten-fastcomp-clang into incoming
1.12.2