MASSIVE refactor, have a saner type TodoList