Compiles again after restructuring but still TODOs left.