Provisional: upgrade Mono -> 3.2.8 + LLVM support

This is a major upgrade of Mono. I have only provisionally tested it because I needed FSharp for some other things (I'll submit a PR for that too).

This also adds LLVM support for Mono - it requires a private LLVM fork. On top of that, Mono needs to correctly point to the right LLVM binary location in the store (why it doesn't do this by default, I have no idea). But otherwise it seems to work nicely with some good speed improvements for some programs.

I'll hopefully get around to double-checking all this more sometime soon.