Change KeyPairProvider to return an Iterable to benefit from lazy loading
Use agent key pairs before the ones from the KeyPairProvider
Fix client main() to support logging, key pairs, password-interactive auth