MultiIndex.from_tuples fails on ('a',) but works for ('a', '')
I have pandas 0.13.1.

```
>>> from pandas import MultiIndex, DataFrame
>>> test = MultiIndex.from_tuples([('a',), ('b', 'c'), ('b', 'd'), ('e',)])
>>> test
MultiIndex(levels=[[u'a', u'b', u'e'], [u'c', u'd']],
           labels=[[0, 1, 1, 2], [-1, 0, 1, -1]])
>>> x = DataFrame(0, index=['row1'], columns=test)
>>> x
        a  b       e
      NaN  c  d  NaN
row1    0  0  0    0

[1 rows x 4 columns]
```

This produces weird results:

```
>>> x['a']
      d
row1  0

[1 rows x 1 columns]
>>> x[('a',)]
      d
row1  0

[1 rows x 1 columns]
```

This works as expected:

```
>>> x['b']
      c  d
row1  0  0

[1 rows x 2 columns]
```

This will make everything work:

```
>>> test = MultiIndex.from_tuples([('a',''), ('b', 'c'), ('b', 'd'), ('e','')])
>>> test
MultiIndex(levels=[[u'a', u'b', u'e'], [u'', u'c', u'd']],
           labels=[[0, 1, 1, 2], [0, 1, 2, 0]])
>>> x = DataFrame(0, index=['row1'], columns=test)
>>> x
      a  b     e
         c  d   
row1  0  0  0  0

[1 rows x 4 columns]
>>> x['a']
row1    0
Name: a, dtype: int64
>>> x[('a', '')]
row1    0
Name: (a, ), dtype: int64
```

This, however, is surprising:

```
>>> x[('a',)]
row1    0
Name: (a,), dtype: int64
```
