BUG: GH3311 Dataframe where with a datetimelike was not correctly selecting
closes #3311

@jreback I think this PR introduced some behavior (definitely codified it in a test) that is incorrect.  From the test:

```
        df = DataFrame(dict(A = date_range('20130102',periods=5), 
                            B = date_range('20130104',periods=5),
                            C = np.random.randn(5)))

        stamp = datetime(2013,1,3)
        result = df[df > stamp]
```

But if you just look at the `df  > stamp`:

```
>>> df > stamp
       A     B     C
0  False  True  True
1  False  True  True
2   True  True  True
3   True  True  True
4   True  True  True
```

Consistency with `Series`, `Index`, and scalars would require comparison with the "C" column to raise `TypeError`.  Also the reverse inequality _also_ comes back as all-True for the "C" column:

```
>>> df < stamp
       A      B     C
0   True  False  True
1  False  False  True
2  False  False  True
3  False  False  True
4  False  False  True
```

So the question: OK to make this raise?  Or is there a compelling reason for this to be different?