REF: implement sanitize_masked_array
The recarray handling in internals.construction is inconsistent with the other recarray handling.  Hopefully I can get that sorted out and then we can re-use sanitize_masked_array there too.