move valueAsString into ValuePropertyBase
move accept() to ValuePropertyBase
Rename ValuePropertyBase

... to Value Property and ValueProperty to ValuePropertyTemplate
rename asValueProperty() to asValue()
add AbstractProperty.hpp to CMakeLists.txt
make use of new ValueProperty class
use asGroup() where applicable