metadata parsing tweaks

Modified by ncbray to simultaniously support LLVM 3.2 and 3.3.
Allow the PNaCl toolchain to be used in place of a standard version of Clang.

The main differences between PNaCl and standard Clang are that the tools are
prefixed with "pnacl-" instead of "llvm-" and PNaCl does not accept "-o=file"
style arguments, and requires them to be specified as "-o file".
Improve the generation of ~/.emscripten on Windows.
Refactor a dictionary comprehension for Python 2.6 compatibility.
converted Object.defineProperty calls to use Object.defineProperties in order to make closure happy