Refactored part 2, also added Remaining todos functionality