Assorted fixes

* cmake CMP0054 and CMP0045
* aarch64 build
* portable code options in PCH cmake
* some of gcc 4.9 warnings
You might want to add a comment here. It took me a while to figure out what was being fixed here and how.