Use ResourceDefinition for creating Resources

Initialise resources with a ResourceDefinition object rather than a JSON
snippet from a template. We no longer need to store the json_snippet (since
the resolving of intrinsic functions is reversible when necessary), so get
rid of it.

Change-Id: I23d183d986ab1d771407502ec926e736d1f48d79
Merge "Use ResourceDefinition for creating Resources"