allow setting a custom converter

I'm mostly working on inbound mail and I need to do a lot of guessing / non-perfect conversions that are a little to buggy for to integrate here, having this api would allow me to throw away a bunch of monkeypatches.

@bf4 @jeremy @mikel 


This would be useful as a generic utility method that charset encoders can call out to, rather than hiding in a private implementation.