
 - Sending email (to Exchange 2007) is not working; server returns
   400 Bad Request.

 - eas_mail_handler_send_email() returns success even when it actually
   failed, leading the user to believe the mail was sent!

 - Unimplemented functions in libeasmail (move/copy messages) return
   success instead of failing with an 'unimplemented' error.

 - Sync calls seem to have no bitmask of which fields are valid.

 - Sync call failing with 'Status 3' must be indicated unambiguously
   so that caller can restart synchronisation from scratch.

 - Implement saving mail to a mailbox, as shown in §4.1.4 of [MS-ASEMAIL]

 - DBus API for 'submit this XML please', for easy testing

 - Password handling: try gnome-keyring and fall back to spawning an
   external tool to ask for the password

 - Move settings to GConf instead of accounts.cfg

 - Store policy key in GConf and don't reprovision every time

 - Use GString for serialising; don't precalculate size. See commit 474ceb9.

 - Handle headers with newline, in serialisation of eas-email-info.

 - Loop on <Sync> command if sync_key is "0".

 - Use DBus activation to automatically start the dæmon on demand.

 - Make the dæmon exit if it is superseded by another dæmon (see
      http://mail.gnome.org/archives/evolution-hackers/2011-May/msg00085.html )

 - Remove dependency on EFlag from libedataserver (deferred till after Beta)

 - Remove all asserts, return runtime errors (in GError / over DBus)

 - Audit for return value (success/failure) matching GError status.

 - Never check for errors by looking at a GError which much be NULL.

 - Synchronous library routines should take a GCancellable.

 - Progress feedback for long-running operations (using Content-Length:
   HTTP header and libsoup 'got-chunk' signal handler)

 - Move to asynchronous DBus operations? May have problems with fixed
   maximum timeouts otherwise, and it may make progress indication
   easier. (Eventually provide asynchronous library routines too).

 - Test on big-endian / 64-bit / ARM, all of which have interesting
	effects on structure layout.

 - Copy/move email

 - Streaming support for sending large messages (build 'template'
   WBXML message and then insert the OPAQUE message data on the fly
   from the source file as it's being sent).

 - Streaming support for receiving large messages (parse incoming
   WBXML on the fly and 'steal' the OPAQUE message data to a local
   file without ever letting libwbxml see it). In EWS we do this
   by replacing the actual node content with the filename we used
   to store the original contents.

 - Think about changing sync_key string handling in API, so it doesn't
   require a fixed-length buffer and overwrite it in place.

 - Ensure HTTP connections are being reused by libsoup where appropriate
   (which we think they should be), and are *not* being reused when not
   appropriate (different users).
