[Common] fixed Crc32 overflow happening in programs built with /checked+

calling operator<< on byte calls the int overload instead of the uint overload
an explicit cast to uint prevents this
[Common(-Tests)] Force MonoDevelop to generate overflow checks

The .csproj file already contains
<CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
but MonoDevelop is ignoring that and does not add /checked+ to the compiler
invokation. Thus we pass this argument to the compiler ourself as workaround.
[Common-Tests] Added Crc32Tests
Merge pull request #29 from oli-obk/fix/crc32_overflow