Arduino Uno - Building a Controller
Yes, all those things have been done before.  Here's some suggestions for components:


MCP23S17 / MCP23017 - SPI / I2C IO expander (16 IO pins, many can be connected together) (MCP23S17 library)
MCP3208 - 8 channel 12-bit SPI ADC (MCP3208 library)
TLC59116 - I2C Constant Current LED PWM driver (16 channel) (TLC59116 library)


Some other useful tutorials that may help:


Keypad - read lots of buttons / switches with not many pins
Multiplex - Control many LEDs with not many IO pins