BUG: Fix for issue #3213

Two changes to numpy.ma.core._check_fill_value:

1. When the fill value is a string and the array type is not one of
   'OSUV', raise TypeError instead of using the default fill value.

2. When the fill value overflows the type, raise TypeError instead
   of OverflowError.

Closes #3213.
DOC: Document changes to ma.core._check_fill_value in release notes.
Merge pull request #4565 from charris/fill_value_fix

Raise TypeError when setting inappropriate ma fill_value