merged from trunk

svn path=; revision=48080
merged from trunk

svn path=; revision=48169
merged from trunk

svn path=; revision=48605
merged from trunk

svn path=; revision=48673
merged from trunk

svn path=; revision=48781
merged from trunk

svn path=; revision=48896
merged from trunk

svn path=; revision=48916
get things building again

svn path=; revision=48917
some msvc portability tweaks

svn path=; revision=48923
merged from trunk

svn path=; revision=49133
merged from trunk

svn path=; revision=49439
merged from trunk

svn path=; revision=49607