more correct creation and edit times for entities

Cleanup of how EntityItem::_created (and friends) are set during initialization and from server updates that use EntityItem::setProperties().  Here's a summary of how it now works:

(1) EntityItem::_created is initialized to 0 in the ctors.  A value of 0 means "creation time is not yet known".  Specifically at that context we don't know if this EntityItem is going to be filled out with data from the EntityServer, or by data from a script creation event.

(2) In EntityItem::setProperties() the creation timestamp is ignored if EntityItem::_created already has a non-zero value.

(3) The path by which scripts create entities doesn't automatically set EntityItemProperties::_created to a useful value therefore we must manually set it after the entity is created.
My memory is a little foggy on this, so I might be wrong about this. I will try to read through the code more closely to make sure your change really works... but, here's what I think I remember about forceCopy. The other place we used forceCopy is in the macros for setting the property of the Entity from the Properties in the case where the properties doesn't think that the value of any particular property has changed.

The one example I can think of where this might have happened is the case of creating an entity from a buffer. 

In that case, the EntityItemProperties gets loaded from the buffer and as I recall, the properties aren't considered "changed" at that point... they just are the values they are. And then we instantiate an EntityItem (of the correct subclass) and call the entity.setProperties(props, TRUE); to force the copying of the contents of the properties object even though the property object doesn't think it's properties values have changed.

Maybe this case doesn't exist anymore because maybe reading from the buffer does set the "changed" items in the properties object to true... so maybe it's ok. I will dig deeper and test.