Use ResourceDefinition as 'before' in resource updates

Replace the use of Resource.parsed_template() in updates with a frozen
version of a ResourceDefinition that uses the property values stored in the
database from the last update/create action, rather than calculated from
the template.

Change-Id: Id23ad60fbf98f2740ece2a337e795cfb3959d6f8
Implements: partial-blueprint update-failure-recovery
Merge "Use ResourceDefinition as 'before' in resource updates"