id-set: support gen interfaces

- equal+hash
- set
- stream
- sequence

- updated tests to use both specific and general interfaces