Updated dependencies and types for Haskell llvm bindings v3.3.8.1.

Updated llvm-general version and added llvm-general-pure in build-depends section of cabal file.
Edited type signatures and imports to fit the new llvm bindings.

Cheers,