Add support for NaCl. This commit adds code to only target x86/x86_64.

I did not write most of this code, but I did have to spend a large chunk of time
killing off issues arising from the 3.4 -> ~3.5 transition.

Now that we have this support, the PNaCl toolchain & related issues have
disappeared. We have now have (admittedly spotty) debug info support for Rust
code, though C++ debug info is still unavailable.