block: vhdx license change from GPLv2 to LGPLv2
block: vhdx, various fixes from code review

Update error returns to not be -1, but rather errno values.
Added some more error checks
Fixed some silly mistakes