MSVC compile fixes for IECore

Various MSVC compile fixes for IECore. Each commit separates them specifically, some are untested fixes derived from turbosun's branch.