split out FAT16 vs. FAT32 root directory handling more plainly, misc. code clean up