Refactor to allow overloaded charsetreader