Okay, Document.remove() listeners implemented too. I'll admit it, I'm an addict...

By the way, no testing on any of this :)