fixes unresolved externals on msvc
Merge remote-tracking branch 'upstream/objects-needed-in-msvc' into objects-needed-in-msvc
conditionally add objects to tests on windows