Adds expected_errors decorator for API v3

Adds an expected_errors decorator for v3 API methods which allows
the specification of what exceptions can be raised within the
method. If an unexpected error occurs a 500 is instead returned
which plus a request to file a bug report

Partially implements blueprint v3-api-expected-errors

Change-Id: I5723e576b30b47744394517cdb1ff6bab1d8f78b
Merge "Adds expected_errors decorator for API v3"