Here is what I think is my bill of materials for the CPU. I actually bought a whole heap of other components and things to build the thing, but this is what I can work out you actually need. It would be good to have a few other things, e.g. a multimeter, a soldering iron, a logic probe, a digital oscilloscope.
| Part | Purpose | Quantity | Comments | 
| A623308A-70SF | RAM | 1 | Overkill, only need 256 x 4 bit SRAM | 
| AT28C64B-15PU | ALU ROM | 1 | 
 | 
| AT28C64B-15PU | Control ROM | 2 | 
 | 
| 74LS157 | 4-bit 2-to-1 Multiplexer | 1 | 
 | 
| 74LS161 | 4-bit register | 2 | A and B registers | 
| 74LS161 | 4-bit register | 1 | Flags register | 
| 74LS161 | 4-bit register | 2 | Program Counter | 
| NE556 | Timer chip | 1 | One-shot and astable clock signal | 
| 5mm LEDs | Debug output | Many | Buy many, you will break some! | 
| Pin headers | To mount the LEDs | 100 pins | Buys lots, they are cheap | 
| 1M resistor | Clock circuit | 1 | 
 | 
| 1M variable resistor | Clock circuit | 1 | Get one that fits on a breadboard | 
| 1K resistor | Clock circuit | 3 | 
 | 
| 1uF ceramic capacitor | Clock circuit | 1 | 
 | 
| 0.1uF ceramic capacitor | Clock circuit | 3 | 
 | 
| Pushbutton | Clock circuit | 1 | Get one that that fits on a breadboard | 
| 22 AWG Solid Tinned-Copper Hook-Up Wire | 
 | Six colours | I bought several 25ft rolls | 
| UM245R | UART interface | 1 | Allows serial output from CPU | 
| 74LS32 OR gate | UART interface | 1 | Decodes Aload and Bload | 
| 0.1uF ceramic capacitor | Noise suppression | Many | Sprinkle them between Vcc and ground next to all chip’s ground lines | 
| 47uF electrolytic capacitor | Noise suppression | 1 | Put it between Vcc and ground where you supply 5V power to the system | 
| Breadboard | 
 | 3 | I bought BusBoard BB830 boards | 
| Heatshrink tubing | 
 | 
 | Enough to protect bare wiring, e.g the LED arrays | 
| Jumper cables | 
 | 40 pcs | Male to male, so I could quickly make connections when testing things | 
| Wire stripper | 
 | 1 | 
 | 
| TL866CS Pro ROM Programmer | 
 | 1 | Expensive yes, but runs on Linux and makes writing to and reading from ROMs easy |