Include/:
- Added the first exception class "ValueRangeExceeded".
- The class checks whether multiplying two integers result
  in a wrap around, which usually is handled silently by the CPU.

toymatrix.h:
- included arithmeticex.h to throw exceptions in special cases when doing arithmetics.
- Added range checking for integers in the multiply operator of the matrix class.
- Added the "throw" keyword to function signatures of functions, that use the multiply operation.
- Implemented the *= operator.

testexceptions.cpp:
- Added file containing unit tests for the new execption class.
CMakeLists.txt:
- Now cmake works from the toplevel directory and generates the makefile for the "UnitTests" subdirectory.
- Unittests  will not build by default (target "all"), since they are optional.
- Added a custom target to build all targets in the subdirectory (cmake: add_custom_target).
- Since the main project consists of C++ templates, there is nothing to build for the default target. An appropriate message is printed when the developer just invokes "make" without a target.

UnitTests/CMakeLists.txt:
- Arithmetic exceptions depend on the define: "ARITHMETIC_EXCEPTIONS". Turning on the appropriate cmake option will add this define as a compiler flag.
- Using ${CMAKE_SOURCE_DIR} variable in path definitions, which point to the path, where cmake was invoked for the first time (in contrast to ${PROJECT_SOURCE_DIR}, which points to the nearest occurence fo the project() keyword).
- Importing gtest library by "set_property(TARGET...", which I later found out to be not the best way to do, because required compiler flags cannot be queried this way => need to use "find_package" for this.
- Added executable targets for the unit tests.

.gitignore:
- Ignoring files generated by cmake.
- Ignoring binary files from compilation.