Bug 858618 - Fix sync failure by uplifting draft implementation (back-end only) from bug 838012. a=blocking-b2g=tef+

This is basically the fix for bug 838012, but only the back-end parts.
The back-end parts were landed on gaia-email-libs-and-more in:
https://github.com/mozilla-b2g/gaia-email-libs-and-more/pull/171
and landed in gaia as:
https://github.com/mozilla-b2g/gaia/pull/9027

The drafts back-end functionality is harmless to uplift since it is not
hooked up in the UI and it brings some relevant fixes along that would
be a logistical/debugging nightmare to not have.

This is just the result of invoking make install-into-gaia and manually
inspecting the diff.  Note that bug 854128 rode-along with bug 838012
because its fix was important for drafts.  For reasons of sanity it is
riding along here too.
Merge pull request #9142 from asutherland/land-drafts-backend-v1.0.1

Bug 858618 - Fix sync failure by uplifting draft implementation (back-end only) from bug 838012. a=blocking-b2g=tef+