Macroize event handler getters and setters

Fix #3755

This doesn't convert some specialized event handlers (e.g. `HTMLBodyElement`'s ones, `HTMLElement.GetOnload()`).
Yes, we should preserve any non-default behaviour like this.