Add iOS as an OS.
Return Maybe Platform as part of compiler configure, and place it in LocalBuildInfo as hostPlatform.
GHC infers the platform form ghc --info using new 'platformFromTriple' function. Other compilers return Nothing, which triggers fallback to old behavior of using buildPlatform. hostPlatform is then threaded through to initialPathTemplateEnv.
Adds $arch-$os-$compiler to libsubdir, datasubdir and docdir by default as suggested in https://github.com/haskell/cabal/pull/1214