Fix CFN API error responses

A remote exception (included in conf.allowed_rpc_exception_modules)
is now restored to a subclass of its original type (with the
exception of non heap types which will always be restored to its
original type). Catching rpc_common.RemoteError is not enough
anymore.

Fixes bug #1214831

Change-Id: Iae3ce0c9d0d3f6565fab25ec899f83f19d46e81b
Merge "Fix CFN API error responses"