Cash Register example commented with challenges