port to new soledad async api

**Not ready to merge, missing changes in leap.mail and maybe other to be compatible with the new API**

It needs to synchronize the merge with the soledad async API and the upgrades in leap.mail.
Maybe just add `passphrase` and `verify` parameter names, as they are optional:

    pubkey, privkey = keys
    decrypted, signed = self._wrapper_map[ktype].decrypt(
        data, privkey, passphrase=passphrase, verify=pubkey)

In contrary to what I said above, I see no problem in calling the keys `pubkey` and `privkey` here, but I think the keyword name for optional parameters are important for clarity.