Handle masked arrays in DataFrame constructor
If passing a masked array to DataFrame constructor, my expectation was that the masked entries would end up as NAN's in the DataFrame.  This does not appear to be the case.  The commits in the pull request try toe address that.

as always, comments welcome.

thanks

This is great-- thanks for making sure it's well-tested
 I'll make an issue to investigate handling of other dtypes. like int or boolean maskedarrays will need special handling. not that important at the moment
