Avoid memory leak with event bindings

Fixes http://bugs.jqueryui.com/ticket/10056

Original discussion in https://github.com/jquery/jquery-ui/pull/1288

----

The following widgets have `refresh()` methods:

* Accordion: Updated to avoid memory leak.
* Menu: Uses event delegation, has no leak.
* Selectmenu: Events are on the button, which is constant.
* Slider: Supports dynamically changing handles, but always unbinds all handle events when rendering new handles.
* Sortable: Doesn't use `._on()`, so has no leak.
* Tabs: Updated to avoid memory leak.
Yes, so that we can get the previous value during a refresh.