Added partial precompiled header support.

Added preliminary support to MSVC toolchain, but it's
not fully functional due to error 2858.
Got precompiled headers working for gcc.