move select to using its own markup instead of a button
move disabled to a mixin, use mixin on button and select. fixes select not correctly disabling