move template methods into separate .hpp; add missing constructors
add setRoot() to PropertyBrowser