stages/disks: use blkid results instead of mkfs
stages/disks: use blkid results instead of mkfs

The previous implementation relied on mkfs utilities properly detecting
existing filesystems and refusing to overwrite them unless the force
flag was set. This didn't work in practice because different utilities
behave differently. As an example, mkfs.ext4 looks at stdin to determine
whether to prompt the user when an existing filesystem was found or to
just blindly overwrite it. Similarly, mkfs.vfat always blindly
overwrites existing filesystems.

This new implementation uses the results of blkid to determine whether
or not an existing filesystem exists. If the filesystem is correct,
Ignition continues to exit early without modification. If the filesystem
is incorrect but the force flag is set, the mkfs utilities will
forcefully create the filesystem. And now, if the filesystem is
incorrect but the force flag *isn't* set, Ignition will detect this and
error out before calling any mkfs utilities.

A side effect of this change is that the `-p' flag can now be dropped
from the call to mkfs.ext4.

ajeddeloh/ignition,ajeddeloh/ignition,dgonyeo/ignition,coreos/ignition,dgonyeo/ignition,dgonyeo/ignition,coreos/ignition,coreos/ignition,ajeddeloh/ignition