Ensure the result of status($folder) is not cached by the Horde_Imap_Client.

Otherwise long running scripts (like ActiveSync polling for changes)
will see outdated data.

The close() call does not close the IMAP server socket connection.
It returns to the authenticated, unselected state.

Bug 12589

Signed-off-by: Jan Schneider <jan@horde.org>
[jan] Retrieve status changes during running requests (Thomas Jarosch <thomas.jarosch@intra2net.com>, Bug #12589).
Stabilize singleton key if Turba_Factory_Driver::create() is called with an array

Bug: 12582
Signed-off-by: Jan Schneider <jan@horde.org>
Prevent crash when message vanished

Fixes this error message:
PHP Fatal error:  Call to a member function getFullMsg() on a non-object

Bug 12584

Signed-off-by: Jan Schneider <jan@horde.org>
[jan] Catch errors in Kolab_Storage_Driver_Imap#fetchComplete() (Thomas Jarosch <thomas.jarosch@intra2net.com>, Bug #12584).
Kolab driver: getByUid() must search all calendars

Otherwise syncing events from shared calendars via ActiveSync
does not work. The SQL driver already works like this.

Bug 12585

Signed-off-by: Jan Schneider <jan@horde.org>
[jan] Fix synchronization of shared events in Kolab driver (Thomas Jarosch <thomas.jarosch@intra2net.com>, Bug #12585).
Improve getChanges() speed

No need to search all calendars if the calendar
is already known when calling getByUid().

Request 12586

Signed-off-by: Jan Schneider <jan@horde.org>