21978 item site

This is the basic refactoring that I did to speed up the widget and reduce some of the callbacks that were lingering when you switch lines in the gridbox. I removed the logic that I had moved to the model because I believe it needs to be in a separate pull-request with some other heavier refactoring to get it to work properly. This pull eliminates some, but not all of the cases where you would see the issue described in #21978.