This project contains implementations of a todo list library intended to try out working with immutable data structures.
Create a library for managing todo list items.
The library should do the following:
- Add a new item to the list
- Remove an item from the list
- Perform actions on a task to change its status
- Actions
- start work
- stop work
- complete task
- Statuses
- Incomplete
- Progressing
- Complete
- Actions
All the relevant data structures (including the list of items) should be immutable. All operations should be without side effects.