Ported Shoes::Widget class from Purple Shoes. Try out sample30.rb.
Merge pull request #1 from shoes/master