Make List.rotor more robust and lazy