* feat: add removeEventListener , and allow register multiple listeners
Instead of remove old one when add new one.
* refactor: simplify the logic, similar to wiki class's addEventListener
* feat: prevent adding the same event listener multiple times