LLVM has C bindings! hooray
wip