You have to figure out how you want to code it... ASM or C or BASIC
I suggest C or BASIC
Then pic a MCU whether it be PIC,AVR,ST etc... and get something with a ton of memory to test with... once done making the test you can easily find out how much RAM and FLASH you will need and can get something to fit those specs...
I would suggest a PIC micro and or AVR and using C so you can port it easy... If using PIC/AVR micro more 20+ GPIO are available in TQFP form. Can you solder SMT?
Those are some of the considerations...