PRD-4613: Added a setter for all properties

this makes it easier to subclass that stuff and allows up to work against the interface instead of working against specific implementations