Also make sure that the line separator is encoded correctly.
Now, if only someone could show me a good way to make the transcoding happen
at attribute assignment and not at every readline call...
Make it an archetype, and then opt classes in. Also tweak the exception
type that is used to be more general, and try to make the wording of it
general enough for all the cases we could get it, so it won't mislead.