Bugfix: check for partial duplicate coincidences

Previous behavior::

    >>> c._do_search_coincidences([(u,) for u in range(10)], 5)
    [[0, 1, 2, 3, 4],
     [1, 2, 3, 4, 5],
     [2, 3, 4, 5, 6],
     [3, 4, 5, 6, 7],
     [4, 5, 6, 7, 8],
     [5, 6, 7, 8, 9],
     [6, 7, 8, 9],
     [7, 8, 9],
     [8, 9]]

Please note that the final three coincidences are all part of the [5, 6, 7, 8,
9] coincidence.  New behavior::

    >>> c._do_search_coincidences([(u,) for u in range(10)], 5)
    [[0, 1, 2, 3, 4],
     [1, 2, 3, 4, 5],
     [2, 3, 4, 5, 6],
     [3, 4, 5, 6, 7],
     [4, 5, 6, 7, 8],
     [5, 6, 7, 8, 9]]

Only unique coincidences will be stored.  In this unrealistic test, there
are coincidences which are partially identical.  If this really happens in
real life, it is up to the user to identify this.