Revert changes to develop branch.

Simplest way to merge to master.
Remove obsolete MSVC check from pragma guard

 git grep -h -B1 "^#\s*pragma once" | grep -v pragma | sort | uniq

is now clean.

[SVN r85952]
Use `BOOST_HAS_PRAGMA_ONCE`.

Remembering to first include config, so that it'll actually be defined.

[SVN r86726]