control-group: abstract helper for grouping different controls

close #540
![2014-06-18_1617](https://cloud.githubusercontent.com/assets/521273/3313358/8ee7fd04-f6e2-11e3-9e86-cccb2836b734.png)

Wouldn't this variable become global for all the blocks during the build process?