[MWF] Refactor DataGridViewRow.MinimumHeight tests

- fix the tests (tests made partially wrong assumptions which didn't
  match the behavior of .NET).
- split MinimumHeight test in multiple smaller tests that test only
  one thing.
- add a few more tests for MinimumHeight and Row.
[MWF] Adjust DataGridViewRow.Height according to MinimumHeight

When the MinimumHeight gets changed to a value less than Height
we set height to the new minimum height (and fire the
DataGridView.RowMinimumHeightChanged event). This matches the
behavior on .NET.

When the user tries to set Height to a value less than MinimumHeight
we silently set the height to the minimum height (instead of
throwing an exception). This matches also the behavior on .NET.
[MWF] Unit test for Row.Height/MinimumHeight bug (#2394)

This change adds unit tests that demonstrate the bug #2394
where setting Row.Height below MinumumHeight in a DataGridView
doesn't work as expected. The unit tests also document the
behavior of .NET which isn't documented in MSDN.
[MWF] Fix crash when setting Row.Height (Fixes #2394)

When setting both Row.Height and MinimumHeight we need to set the
MinimumHeight first otherwise we will get a crash if the new Height
value is less than the old MinimumHeight value.
[MWF] Add unit tests for DataGridViewRowHeightInfoNeededEventArgs
[MWF] Don't allow Height become less than MinimumHeight

In RowHeightInfoNeededEventArgs we need to check that the new
Height value isn't larger than the current MinimumHeight.
Merge pull request #948 from ermshiperete/bug-xamarin-2394

[MWF] Fixes related to Height and MinimumHeight in DataGridView