- [x] Improve subscription API to detect when the client drops and stop listening - [ ] Improve the detection of drop-client reactive, instead of waiting until an attempted delivery fails. - [ ] Implement the filter by status - [ ] Implement the filter by since / until (this is implemented at the primary key level at the cursor) - [ ] Have more tests - [ ] Move the broadcasting of events to a different thread - [ ] Stop the working thread when the ledger goes out of scope Bonus - [ ] Improve the HashMap of Filter to use the filter much more efficiently with the primary key (similar to the cursor)