ata/ahci: Move some ATA functionality into the ATAInfoBlock.

* The AHCI driver was actually ignoring sector size information, and always
  set the size to 512.
* Now both, the AHCI driver, and the ATA bus manager, use the same method of
  retrieving the sector count, and size.
DriveSetup: improved error reporting.
gpt: Added some missing pieces of supporting the backup header.

* The alternate block was not set correctly.
* The CRC of the backup header was never updated.
* We now dump both headers.
gpt: Always use at least 4K to align partitions.

* Many of today's disks that use 4K internally don't advertize this.