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.
You are right, this should fire another fail. I was keeping the old logic without thinking on it too much.

As I explained before the errback chain waits until you add an errback and then it will fire it. See http://krondo.com/?p=2205 for more details.