This fixes alignment issues with struct sgdisk_partition when used
outside sgdisk (eg. in recovery).
Also push/pop the pack decls in header files to further fix the issue.
Change-Id: If10799ea443ad6870a53494925b4032abb32c542
When using #pragma pack (n) to change the alignment for a struct
to n bytes, it is necessary to reset the alignment to the standard
value as otherwise the changed alignment is used throughout the
whole program code which causes other structs to become unaligned.
Adds relative partition sizing and placement options for both start and
end sectors; improves hybrid MBR synchronization (deletes matching MBR
partition when a GPT partition is deleted, warns about inconsistencies
when verifying or writing a partition table).