Refactored types out into Types.hs

rationalized the types a bit
put back wrapper around version for Ghc and normalized how it and the wrapper for Hp's version were done
Refactor the Config type as well