Sorry I mean `this.dispose()`, I don't think that is recursive? Isn't the `call` method just a way to call a function with a different object scoped as `this`. If it's a superclass we should inherit from it right? Maybe not, I'll look into the way google closure does inheritance. Maybe FieldDropdown overrides the dispose method and we want to use the non overridden version?