Fix for LLVM 3.5
llvmGen: Clean up Haddocks
llvmGen: Use record patterns against LlvmFunctionDecl

This is in preparation for adding some fields
LlvmCodeGen: Factor out "normal" LlvmFunctionDecl
LlvmGen: Add prefix and symbol_offset fields
llvmGen: Add isManglerNeeded
llvmGen: Add GetElemPtr
Try things
Fix function definition
Start ripping out LLVM mangler