Added all the TODOs from Mr Currie's code walk through