Ensure that modifyProperty's propertyHasBeenSet never returns to false once set

refs #2589
Get createProperty to use createProperty for delegations and same for initialize

refs #2589