Add source data to copier jobs

This allows us to track where a copy job was scheduled from.

Patch by <user name="fu">.
Optimize the sphinx copier

The copier is now resilient and efficient against journals with huge
numbers of comments. It's slightly less efficient with huge numbers of
entries, but it still seems to work fine for all of DW's accounts.

Thanks to <user name="cfud"> and <user name="sixwordstories"> for making
this necessary. :-)
Skip both DOOO entries with a later date, and stickies

Sticky entries are not marked, so we have to make a best effort by
comparing the jitemids of all non-DOOO entries that we got
Merge pull request #267 from afuna/import-top-entry

Skip both DOOO entries with a later date, and stickies
Some search fixes

* Fixes excerpts to use the dw1delta index (which falls back to dw1).

* Fixes the UI to properly save the 'include comments' flag.

* Makes the scheduler faster (for re-copies).

* Adds the 'touchtime' column which lets us properly index updated
content. The old method relied on the id field incrementing which wasn't
true if content got edited.
Merge branch 'release-1.13' into develop
(Bug 4898) Register the iconbrowser_save function under userspace
(Bug 4899) Convert to JSON::true/false

Don't use string "true/false" which is what we had to do before. Instead, use
the proper datatypes and let the JSON module handle it for us.
Merge pull request #280 from afuna/icon-browser-journal-noload-bug4899

(Bug 4899) Convert to JSON::true/false
Merge pull request #279 from afuna/icon-browser-nosave-journal-bug4898

(Bug 4898) Register the iconbrowser_save function under userspace
Update call to faqlink hook
Merge pull request #281 from afuna/faqlink

Update call to faqlink hook
Merge branch 'release-1.14' into develop

* release-1.14:
  Update call to faqlink hook
  (Bug 4899) Convert to JSON::true/false
  (Bug 4898) Register the iconbrowser_save function under userspace