block:sunxi: handle nand partitions using linux block/partitions check.c code

This patch creates /dev/nand[1-n] partitions similarly to the code for
other devices in /block/partitions.  It allows the partition table to be
reread (and devices recreated) on receipt of a BLKRRPART ioctl command, so
that nand partitioning/flashing can be performed without rebooting the
device.  Old device names (i.e., /dev/nand[a-k]) are still created if
CONFIG_ANDROID is set (needed by android initrd code; also for backwards
compatibility with old boot.scr or uEnv.txt files that set root=/dev/nandb).

Tested extensively on Hackberry and Cubieboard with a script (nandflash,
nand-part2.c -- see separate post to sunxi-tools) for partitioning and
copying MMC file system to nand, setting up optional swap partition, etc.

Don't know how far along the MTD support work is, so I don't know what your
interest level is in supporting the Allwinner NAND block devices, but here
it is, anyway.

Pat Wood