Test coverage for all EventBus methods:
- Subscribe: creates subscriptions, returns unique channels, supports multiple namespaces
- Unsubscribe: removes subscriptions, closes channels, handles edge cases
- Publish: delivers events to subscribers, handles empty namespaces
- Namespace isolation: events only reach subscribers in the same namespace
- Stop: closes all channels and cleans up subscribers
- Multiple subscribers: all subscribers in a namespace receive events
- Concurrent operations: thread-safe subscribe/unsubscribe/publish
Closes#17
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>