NetApp fix create vol different size than snapshot

This fixes the issue of creating vol of different
size than snapshot and creating cloned vol of
different size than original.

This change adds a lot of additional LUN geometry
and sub-LUN cloning code which is neccesary to
support extreme resizes, since normal resize
operations are limitted to be within a certain factor
of the original LUN size.

Closes-Bug:#1098581

Change-Id: I8652bfaa67c12c790fa80650a051497f70279b9c
Add logging to prior to raising exceptions

This patch fixes an issue where exceptions
happen in the 3PAR drivers and the exceptions
aren't being logged to the log file.

Fixes bug #1225235

Change-Id: I8ec26fe3bee65106e01e956472e06acf1d5b9f77
Merge "Add logging to prior to raising exceptions"
Merge "NetApp fix create vol different size than snapshot"
Added mapper for snapshot_metadata

cinder/api/v2/snapshot_metadata.py exist with all actions
but mapper missing for it.

Closes-bug: 1227799

Change-Id: I9a95c68a8de620626042951fa15a555621ebbc17