Initial modular patch, from Bjorn.


[SVN r85884]
Undo previous commit, it was meant for another branch

[SVN r85888]
Spirit: Remove obsolete MSVC version checks

[SVN r85906]
Silence int to bool conversion warnings

[SVN r85924]
Remove obsolete MSVC check from pragma guard

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

is now clean.

[SVN r85952]
Spirit: Remove obsolete MSVC version check.

[SVN r86034]
Spirit: Remove obsolete GCC version checks.

[SVN r86061]
Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION

Process #ifdef...#endif blocks.

[SVN r86243]
Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION

Process #ifndef...#else...#endif blocks.

[SVN r86245]
Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION

Process #ifdef...#else...#endif blocks.

[SVN r86246]