Handle multiple exceptions raised by jsonpatch

The jsonpatch.apply_patch() might raise different types of exceptions,
this patch improve the exception handler on the jsonpatch.apply_patch()
call to capture them and also creates a new exception called PatchError
to avoid replicating the same error message across the resources.

The patch also doesn't log the exception raised by the apply_patch()
anymore, since the problem will be returned to the client directly via
the API response.

In the chassis.py an alias "api_utils" was created to the utils module
to be more consistent with the ports and nodes resource.

Closes-Bug: #1271554
Change-Id: Ied1f5e573839520cc5f4e04548720f016f33349b
Merge "Handle multiple exceptions raised by jsonpatch"