Simplify setProperty by allowing it to call createProperty and initializeProperty

Also, made all three functions share the same "entries" object so they could catch delegations across their boundaries (for example, a create that delegated to a set)
refs #2589