Oh and to answer your question about so many outputs...
The long lines of pins are for the LEDs, so they're driven off the TLC5947's and one thing I forgot to mention is that they won't require any resistors... another beginner friendly feature. (Nor will the switches require pullups, as I'll just use the internal pullups of the Atmega.)
And the MicroSD, DAC, and LED drivers all run off the hardware SPI bus. That leaves me with 13 IO pins, since I won't be using the RX/TX pins for serial communications. The 13th pin I used for those SPI pins up top, so that can be used as another IO or for some future expansion module.
Also, the pin order is reversed from the Arduino because I felt it would be easier for beginners to understand if the analog outputs started from pin 1 like the digital pins, rather than being the last six digital pins.