iconv-lite only has subset of encodings, allow easy use of iconv if user requires it

The encoding module is a wrapper that lets users decide if they wish to
use iconv. If present, iconv is used by default (override possible to
force iconv-lite) but if not found will use iconv-lite instead.

Thus node-imap carries on as before but if iconv-lite is found lacking
for a given use case, simply installing iconv on the system will use
that instead.