Revert "Revert "Remove all usage of the global LLVMContextRef""

This reverts commit 541c657a738006d78171aa261125a6a46f283b35.
Revert "Revert "Have JIT execution take ownership of the LLVMContextRef""

This reverts commit 19adece68b00bd1873499cca6f1537750608d769.
Correctly parse commands for rusti

Closes #7120
Don't run passes again on JIT code

These passes are already run beforehand, no need to do them twice.
Resolve LLVM crashing in rustpkg tests
auto merge of #7125 : alexcrichton/rust/rusti-issues, r=brson

This un-reverts the reverts of the rusti commits made awhile back. These were reverted for an LLVM failure in rustpkg. I believe that this is not a problem with these commits, but rather that rustc is being used in parallel for rustpkg tests (in-process). This is not working yet (almost! see #7011), so I serialized all the tests to run one after another.

@brson, I'm mainly just guessing as to the cause of the LLVM failures in rustpkg tests. I'm confident that running tests in parallel is more likely to be the problem than those commits I made.

Additionally, this fixes two recently reported issues with rusti.