Widget enhancements

- Checkbox respects "disabled"
- "additional" fields for select
@ivank `disabled` could be passed in several different ways:

- `array('disabled' => 'disabled')`
- `array('disabled')`
- `array('disabled' => NULL)`

In the last case it means to unset it, if it was set another way. So you should actually check with `in_array('disabled', $attributes) OR isset($attributes['disabled'])`.