<1> adding return statement to cereal functions because every evaluation of return type as non-void will require an explicit mention of "return <non-void-type", otherwise will be caught as compile error by our build system.
<2> putting a file for boost_optional support from https://github.com/stevehickman/cereal/blob/master/include/cereal/types/boost_optional.hpp
auto modified file
removing stuff from CMakeLists.txt that had been added to get cereal headers listed in the IDE for modification
Updated Boost to version 1.57.0.
Minor fixes to handle updates to OS X version 10.10, CMake Version 3.1 and Boost version 1.57.
Added CMake option to include test targets.
Further updates to exclude tests if required.
Another update in preparation for CMake 3.1.
Merge pull request #165 from ustulation/MAID-413-modify_and_update_cereal

Maid 413 modify and update cereal
Merge pull request #170 from Fraser999/MAID-457

Minor fixes to handle updates to OS X version 10.10, CMake Version 3.1 a...
Merge pull request #171 from Fraser999/MAID-460

Added CMake option to include test targets.
Updated CMake if statements in line with CMake v3.1 policy.
Bugfix in add_gtests CMake module.
Merge pull request #173 from Fraser999/MAID-500

Updated CMake if statements in line with CMake v3.1 policy.
Cmake 3.0 fix

Moved add_subdirectory to after if statement
Merge pull request #174 from rossmuir/MAID-511_Cmake_3_fix

Cmake 3.0 fix
Merge remote-tracking branch 'origin/next' into MAID-432_boost_1_57

Conflicts:
	cmake_modules/add_boost.cmake
Merge remote-tracking branch 'upstream/next' into MAID-432_boost_1_57
Merge pull request #169 from Fraser999/MAID-432_boost_1_57

Updated Boost to version 1.57.0.
Merge remote-tracking branch 'upstream/next' into next