- Introduced Subject class for managing state and notifying listeners
- Added ReadOnlySubject class to provide read-only access to Subject values
- Created assertUnreachable utility function for unreachable code handling
- Updated observables index file to export Subject and ReadOnlySubject
- Introduced IDisposable interface for defining disposable behavior
- Implemented Disposable class for single disposable resources
- Created DisposableList class to manage multiple disposables
- Updated index file to export the new classes and interface