Adding selection support

The multiple commits are caused by me uploading code via Github. I will rebase it all before I merge. 
1. The text for the label should be in src/nls/{locale}/strings.js
2. Why did you choose a different HTML structure? Just wondering, since it’s now being inconsistent with the rest…