Fix DataFrame.to_latex() midrule positioning with MultiIndex columns
Currently, the positioning of \midrule is determined by the number of index
levels, not columns levels:

```
>>> print pd.DataFrame({('x', 'y'): ['a']}).to_latex()
\begin{tabular}{ll}
\toprule
{} &  x \\
\midrule
{} &  y \\
0 &  a \\
\bottomrule
\end{tabular}
```

The fix is simple: use the number of column levels instead of the number
of index levels.

looks fine to me.

@jseabold @jorisvandenbossche any objections?
 Seems simple and good fix!

BTW, I noticed in your test that a multi-index in the rows is just put in one column with a space. Wouldn't this be better put in two seperate columns? (but that is for another issue/pr)
 @jorisvandenbossche Yes, I agree. Multiple columns (instead of a space) for a multi-index index would be better (but not in this PR).
 With MultiIndex index should there be & separating the levels? http://stackoverflow.com/q/25734454/1240268

Update: I see @jorisvandenbossche commented on that very thing!
 The linked PR fixes this for MI index.
