add toVariant() and fromVariant() methods to AbstractValueProperty
add rvalue (copy) constructors and assignment operators; add ptr() method; add comments