Make sure the JavaScript works if jQuery noconflict is used by supplying $ in closures. Add some catch statements especially for IE running on localhost (debugging), add code for error handling when saving the current workspace layout (contains drupal specific code to be replaced by sth. generic). Add a property to panels so the parameters in the URL are available to every method as an object, enable scan panels to know to which config/context they belong, make the (pixel perfect) spacing used by the panels use variables instead of constant value scattered throughout the code. Add a typedef for panel description objects that are used as a form of passing parameters in drupal (but maybe from somewhere else too), these can be used to check whether a particular scan or search panel is already open.
Return something to identify file not found.