some style changes
refactor things, add llvm module