Refactor `fusionbox.unicode_csv`

The new unicode supported reader and writer are separate classes of the
`fusionbox.unicode_csv` module.  Usage has changed and the
readers/writers will need to be imported separately as classes.

- No more "monkey business"
- CsvAdmin is changed to support the changes
- Changes to tests
- New UnicodeDictReader and UnicodeDictWriter classes
- Tests for the new UnicodeDict* classes
Add support for other encodings aside from utf-8
Use **kwargs instead of **kwds for consistency
Change module so that it is a drop in replacement for stdlib csv module
Use the fusionbox.unicode_csv module as a drop in replacement
Merge pull request #55 from fusionbox/csv_refactor

Refactor `fusionbox.unicode_csv`