Allow NotFound to be created without args

It appears that the serialization used to wrap RPC exceptions
requires that the class be instantiated without any arguments.

Since the NotFound exception required a msg_fmt it could not be
deserialized in heat-api, which lead to no mapping in the FaultWrapper
so a 500 was raised instead of a 404.

This change adds a default value for msg_fmt for the NotFound exception.

The classes Error and ResourceFailure likely have this issue too, but it
is not as serious since they will raise a 500 error anyway.

Config/deployment API tests now check that NotFound can be deserialized by
calling to_remote_error, and checks that FaultWrapper converts that to
HTTPNotFound.

Change-Id: Ieb8de26465cb26aa015f15c134f80a06ebcae95c
Closes-Bug: #1301657
Related-Bug: #1304743
Add documentation for creating a resource plug-in

Change-Id: I229316c6f4c634c18fc33b0f5ffd3ce5d194b383
More specific exceptions when validating params

In addition to the example cited in the bug, this updates a few other
exception messages to indicate the name of the parameter that is failing
validation.

Change-Id: I1b7729305988444dc15abd6e5d958f443efc091d
Closes-Bug: #1294295
Merge "Allow NotFound to be created without args"
Merge "Add documentation for creating a resource plug-in"
Merge "More specific exceptions when validating params"