DataFrame.to_html should validate that formatters has the correct length
The length of `formatters` should match the number of columns

Both of these should error with a nice message.

```python
In [2]: df = pd.DataFrame(columns=['a', 'b', 'c'])

In [3]: df.to_html(formatters=['{}'.format])


In [4]: df.to_html(formatters=['{}'.format] * 5)
```

Currntly `In [4]` succeeds, silently ignoring the bad input. `In[3]` values with a vague `IndexError: list index out of range`.