Changed containsKey to behave like the Map interface, not just if the key is a valid field name, causes more problems than it helps
Changed get-original-value to only run before while get-entire-entity runs before or after (but only on update or delete)