core/utils: Introduce SortedSet
core/utils: Introduce SortedSet

  We want to be able to reduce a collection while still have the ability to
  easily delete an element from the collection (i.e. without looking for
  the element's index first).

  However:
  - Sets cannot be reduced
  - Arrays do not offer the ability to delete an element directly

  The SortedSet data structure uses both an Array and a Set to make
  those 2 actions possible transparently.

cozy-labs/cozy-desktop,cozy-labs/cozy-desktop,cozy-labs/cozy-desktop,cozy-labs/cozy-desktop