BUG: pd.isnull with tuple argumnet should return same results as list (#4872)
Fix for issue #4872. Now tuple argument for pd.isnull behaves the same way as list pd.isnull(list(tuple_argument)).

@ssalonen just so you're aware, I'm not sure whether we would accept this PR, because it introduces inconsistencies between how tuples are treated when part of an index or other NDFrame objects vs. the toplevel. Generally, in pandas lists indicate `you should iterate over me` whereas tuples indicate `you should consider me to be one scalar element`.

Further, this would mean that this will no longer be true (and if it's not currently, it should):

``` python
ind = Index([(1, 2), 5, (np.nan,)])
assert all(a == b for a, b in zip(map(pd.isnull, ind), ind.isnull())
```
 that said, we'd definitely incorporate the test cases (altered to reflect current behavior), because it's useful to establish how tuples are supposed to be treated.
 @jtratner after thinking about this for a while I think I agree with you about how tuples are handled. 

My base claim was that the behaviour should be the same as in numpy but I think in numpy having tuples in a array are more of a corner-case and not supported properly (try for example creating array with tuple elements in numpy and pandas...).

When accepting the fact that Series and Dataframes with tuple elements are OK and part of the framework, isnull should handle tuple as scalar. This is because we would like to have map(series, pd.isnull) to equal pd.isnull(series)

I do believe that a disclaimer in the docs might be in order...
 @ssalonen ok why don't u close this and I will change original to a doc update (maybe in missing.rst)
 closing and changing to a doc issue
