Wouldn't it be more accurate to say that you need NAND gates and a clock? Identifying a minimal set of primitive components necessary to implement a self-timed computer would be a more interesting problem.
This is truly a great book and I can't recommend it enough. I've been working through the projects for the past couple weeks.
As the author states, it can be hard for CS students to see the forest for the trees among all the computing topics. I know that while I was learning these topics individually I never took the time to step back and really connect them.
With TECS you get to build each layer and define a an interface between them from logic gates to virtual machines, to compilers, to operating systems, etc. In the end you have a fully functioning computer that you have built from scratch. By removing all the "magic" from the system I feel like I have a much deeper understanding of these topics than I did before.
Or NOR gates like this one: http://en.wikipedia.org/wiki/Apollo_Guidance_Computer#Design