Merge Boost.Variant from trunk
* documentation, tests and implementation of multivisitors (fixes #8459)

svn path=/branches/release/boost/variant/; revision=84282