Fixed some naming issues.
Remove external dependency on llvm via git submodules.
Add support for linux dynamic linker.