Add heat_template_version to network fragments

Without heat_template_version heat assumes CFN format templates.
Post Icehouse, HOT has added a lot of functionality not in CFN, and
template version appears to be mandatory in recent builds of heat -
without it, heat raises a 400 error: "The template version is invalid:
Template version was not provided".

This patch changes engine/heat_stack to add heat_template_version
if it's not already present in a template at push time, and to reject
heat_template_version if it's in a dictionary passed to updateTemplate
that does not match the expected version.

Change-Id: I5f30100182d282d65710097e0859918705b1a9c0
Closes-Bug: #1328593
Merge "Add heat_template_version to network fragments"