- api level 14 is required to access the KeyChain (via
KeyChainKeyManager) so throw an exception in those cases
- use MessagingException with permanent flag set if client certs. are
not available.
- test for AUTH=EXTERNAL capability before attempting it
- imap capabilities must be refreshed after STARTTLS in order to notice
that AUTH=EXTERNAL is now available
- some debug statement
- redo the way the interactive prompting is triggered removing some ugly
global statics.  thanks to cketti for good suggestions