Convert.ToInt32 rounds to the nearest even number?
===

Looking at the msdn documentation for `Convert.ToInt32()` it states:

> If value is halfway between two whole numbers, the even number is
> returned; that is, 4.5 is converted to 4, and 5.5 is converted to 6.

http://msdn.microsoft.com/en-us/library/ffdk7eyz.aspx

Why is this? Surely it would be more logical to round to the nearest whole number? Therefore 4.5 would become 5, and 5.5 would become 6.