decoupled the Adjust logic from the EventHandler and made an AdjustHandler. Now we can have AdjustSuppliers that don't maintain state, which I used to implement Surfaces.