Added "optgroup" support and improved "disabled" suport

+ Optgroup support #2 #6 #125
+ Disable support #190 #193 #199