Merge pull request #389 from melted/optllvm

Make LLVM optional but the default
Fail idiomatically