If you're really serious about making a BASIC interpreter with stuff like motors, sensors, SD cards and such, maybe you should consider something other than the ATmega328.Why not use the ATmega2560? You'll start out with 8K of RAM (2X the original Apple I) and it supports extending the RAM with an external chip. Maybe don't add the external RAM on the first board, but add it later on.You'll have I/O for your on-board stuff with plenty left over for the user to do whatever they want. The overall design isn't much more complicated than the ATmega328, though the PCB layout is a little bit more important given the chip's package.
SD cards need couple hundred mA of 3.3V VCC and 3.3V level signals. 74HC4050 commonly used for level conversion.
So why just load your sketch with an AVR ISP using File:Upload Using Programmer? Not far to migrate.