Add 'formatting' method to readers.

It currently returns the delimiter, the dialect instance and the
expected number of columns.  You can use this to give a hint in an
upload form.
Add self.fields in base reader.
pep8
Optionally allow ignoring extra columns.

To use this: initialize the reader with 'ignore_extra_columns=True'.