Merge/SubscriptionSet - Performance

New data structure with significant performance improvements:

Before

```
Run: 10 - 1,697,014 ops/sec
Run: 11 - 1,675,210 ops/sec
Run: 12 - 1,781,483 ops/sec
Run: 13 - 1,674,677 ops/sec
Run: 14 - 1,714,354 ops/sec
```

After

```
Run: 10 - 2,474,757 ops/sec
Run: 11 - 2,491,652 ops/sec
Run: 12 - 2,481,759 ops/sec
Run: 13 - 2,491,963 ops/sec
Run: 14 - 2,706,213 ops/sec
```

Before:

```
Benchmark                                       (size)   Mode   Samples         Mean   Mean error    Units
r.u.PerfTransforms.flatMapInt                        1  thrpt         5  1513055.461    35120.889    ops/s
r.u.PerfTransforms.flatMapInt                     1024  thrpt         5     2229.818       50.863    ops/s
r.u.PerfTransforms.flatMapNestedMapFilterTake        1  thrpt         5  1114912.405   137096.910    ops/s
r.u.PerfTransforms.flatMapNestedMapFilterTake     1024  thrpt         5       82.799        1.695    ops/s
```

After

```
Benchmark                                       (size)   Mode   Samples         Mean   Mean error    Units
r.u.PerfTransforms.flatMapInt                        1  thrpt         5  2435788.713    81926.617    ops/s
r.u.PerfTransforms.flatMapInt                     1024  thrpt         5     3116.816      326.367    ops/s
r.u.PerfTransforms.flatMapNestedMapFilterTake        1  thrpt         5  1833742.000   174429.120    ops/s
r.u.PerfTransforms.flatMapNestedMapFilterTake     1024  thrpt         5       83.968        3.688    ops/s

```