Add failing test cases for issue #51
Field parsing will now fail if there is any unconsumed input

Before this change cassava (via attoparsec) would silently ignore
unconsumed input while parsing CSV fields.  If, for example, a CSV file
contained a field with "12.7" which was parsed into an Int, the ".7"
would be ignored (and skipped over).  This change triggers a field
parsing failure instead.

Closes issue #51.
Bump version number to 0.4.0.0

New fields were added to the encoding options record.
Allow only carriage return as line break.
Trim whitespaces for numeric fields

It leads to ~5% slowdown
Future-proof the type of endOfLine
Widen dependency on attoparsec
Document that numeric field conversion ignores whitespace
Add a changelog
Bump version number to 0.4.1.0

While the API wasn't changed, we're now more lenient in parsing and
bumping the minor version allows users to rely on the new behavior.