Rails-style options for select

ref #872

```ruby
opts = {
  "Friends" => ["Yoda",["Obiwan",2,:magister=>'no'],:lame=>'yes'],
  "Enemies" => [["Palpatine","Palpatine",:scary=>'yes',:old=>'yes'],["Darth Vader",3,:disabled=>true]]
}
actual_html = select_tag( 'name', :grouped_options => opts, :disabled_options => [2], :selected => ['Yoda'] )
```
=>

```html
<select name="name">
<optgroup label="Friends" lame="yes">
<option value="Yoda" selected="selected">Yoda</option>
<option value="2" magister="no" disabled="disabled">Obiwan</option>
</optgroup>
<optgroup label="Enemies">
<option value="Palpatine" scary="yes" old="yes">Palpatine</option>
<option value="3" disabled="disabled">Darth Vader</option>
</optgroup>
</select>
```

If additional API is acceptable, we can close #872

Also I would like to **drop confusing API** with slipping booleans into array of options to disable them like this:

```
opts = {
        "Friends" => ["Yoda",["Obiwan",2,true]] # I'm confused, my head is spinning
```