Fix #69 and other small bugs

The menu is now completely accessible - with arrow keys, letters, and numbers, just like a normal select. Along with this, disabled options are not focused on any more when using the arrow or tab keys. Some additional optimization may be necessary later.

Also of note, I pulled out `this.$element.bind('DOMNodeInserted DOMNodeRemoved', $.proxy(this.refresh, this));`, so `refresh()` isn't automatically called for every option appended any more, and must be called manually. When dealing with a large number of appended options, this was resulting in major performance issues and in one case crashed my browser.

This also fixes any issue in IE8 where there was no width on the select, because IE8 doesn't support the `:not()` selector and rather than ignore just that, actually ignores the entire line.

This also fixes an IE10 issue. If a normal (not multiselect) select was created and no option was set to `selected` and another option was set to `disabled`, the select was displaying both the first option and the disabled option for the title. (e.g. "Mustard, Ketchup" rather than "Mustard").