If you follow my Arduino pages, you see many projects using SN74HC165 and SN74HC595 shift registers.   They allow you to do many things with a few wires to the Arduino.  I have used 4 of them in series for some projects.   Many projects have two in series.