Check presence of C++11 algorithms in <algorithm>

Implement simple compile/run tests for the following C++11 algorithms
that the <algorithm> header may supply:

- std::all_of
- std::any_of
- std::copy_n
- std::find_if_not
- std::is_partitioned
- std::is_sorted
- std::minmax_element
- std::none_of
- std::partition_point
- std::shuffle

If test compiles and runs successfully, set CMake variable
HAS_CXX11_ALGORITHM_<NAME> to true, where <NAME> is the upper-cased
name of the algorithm. For example <NAME> is ALL_OF if the std::all_of
algorithm is supported. The only exception to this is
std::minmax_element, where <NAME> is MIN_MAX. This is done because
this test covers the major minmax algorithms, and provides easier
compatibility with the FNAL cpp0x defines.

Document each test and set variable in the CheckCXX11Features module,
and link them to the corresponding FNAL cpp0x preprocessor symbols
in the main README.