Fixes for compiling with LLVM 3.5 & ARM

More minor fixes for compiling on ARM and my x86-64 workstation. Summary:
* changes for cmd line parsers (bug with unsigned char on ARM again)
* LLVM 3.5 API compatibility (previously was protected by #ifdef __arm__, but the 3.5 API seems to need DataLayoutPass instead of DataLayout in the FPM regardless of arch)
* when compiling with clang, removed an llvm-config flag obviously intended for gcc that causes warning spew on clang (your call if you want to merge it)
* zlib linking stuff: libLLVMSupport depends on it, causes build to fail with linker errors (please let me know if there's a better way to fix this)