extract methods to propertyHelper, add auto setter injection