Fixes Hyper-V VHDX snapshot bigger than instance

In Hyper-V, the deployed images will be extended having their
metadata size added to their base image size. This may lead to
snapshots bigger than the flavor size.

This patch adds support to the V2 utils module, so that the
maximum internal size of a requested image may be calculated
in a similar way it is done in the V1 module.

VHDX format specs:
http://www.microsoft.com/en-us/download/details.aspx?id=34750

Closes-bug:  #1231911

(cherry-picked from commit 9ea92029f7846dc65238b0be3c3c95568862448d)

Change-Id: I0d6aacb275f8af24554d3e8b6f04fe8a454b913f
Replaces exception re-raising in Hyper-V

In a few cases in the Hyper-V driver classes, generic exceptions
are getting caught, logged and a domain specific exception is raised.

This creates issues in identifying the exception cause programmatically
(e.g. in unit tests).

This patch enforces the usage of excutils.save_and_reraise_exception()

Closes-Bug: #1280363

(cherry-picked from commit 80ffc9b8b38293c05c9d48cb615b24fd7255a850)

Change-Id: I27cc54941c5f592ea567ccaa8fa369362da1427f
Added missing raise statement when checking the config driver format

Closes-bug: #1275772

(cherry-picked from commit 378c28a8c05d3943324b5a39edef947ed7a9f52a)

Change-Id: I636525d0272511d4192c43d18c56e867fb7514d8