compile with C++11 standard and update to modern constructs

This merge will enable ISO C++ 2011 in the build process and add a BOOST define that allows proper linking of boost_filesystem,
Additionally it will update the following constructs to C++11 equivalents:
 - replace all boost::list_of and boost::map_list_of with proper initialiser lists
 - replace all BOOST_FOREACH with range-based for loop
 - drop PAIRTYPE macro which was required by BOOST_FOREACH
 - spaces were added to string literals to conform with the standard
 - std::auto_ptr is deprecated, so it was updated to std::unique_ptr