Bug 1506449 - Use an Option<T> instead of Item<T> in DataStore. r=gw
Bug 1506449 - Use an Option<T> instead of Item<T> in DataStore. r=gw

This does two things:
* Ensures that the T gets dropped when the item is removal, which is
  important for the TextRunKey case where it holds heap memory.
* Eliminates the epoch handling while still ensuring that we panic on
  stale lookups.

We also remove the Item usage for local_data, but don't bother with the
Option in that case.

Differential Revision: https://phabricator.services.mozilla.com/D16629

[wrupdater] From https://hg.mozilla.org/mozilla-central/rev/53a5c9148120d2716d8f668f2a81edf71016d0f4

servo/webrender,servo/webrender,servo/webrender,servo/webrender,servo/webrender,servo/webrender