work out gc a bit better
- docs
- implement error for removal of non-present event