Create a better exception in Fn::Replace

if the replace value is the wrong type we get a generic exception
out of string.replace that does not really help with debugging
a template.

Change-Id: I2d6d5509b8900b11bfbf148230d57438e1f9962a
Catch the appropriate exception for missing instance

Catch ClientException instead of NotFound since this is
what the underlying client library actually throws.

Closes-Bug: #1236911
Change-Id: I1e7f3c69c216d19705cab9bdcd7302e1b917fdd4
Merge "Catch the appropriate exception for missing instance"
Merge "Create a better exception in Fn::Replace"