Start work on abstracting libclang into a safer and more functional interface.