I am reading the excelent "The annotated Turing" by Charles Petzold. This project contains an emulator for a Turing Machine.
So far I have only written enough code to satisfy Turing's first three machines. I plan to add an enterpreter which converts tables in the notation Turing into the functions I am using.