Add, delete, show, and mark your tasks as done.

Note:
todo - Add a new taskFormat: todo <task>
Example of usage:
todo hello
Expected outcome:
Task added: [T][X] hello
deadline - Add a new task with a deadlineFormat: deadline <task> /by yyyy-mm-dd
Example of usage:
deadline hello /by 2020-09-30
Expected outcome:
Task added: [D][X] hello (by: 30 Sep 2020)
event - Add a new task that happens on a certain dateFormat: event <task> /at yyyy-mm-dd
Example of usage:
event hello /at 2020-09-30
Expected outcome:
Task added: [E][X] hello (at: 30 Sep 2020)
done - Mark a task as doneFormat: done <task number>
Example of usage:
done 1
Expected outcome:
Task marked as done: [T][V] hello
delete - Delete a taskFormat: delete <task number>
Example of usage:
delete 2
Expected outcome:
Task deleted: [D][X] hello (by: 30 Sep 2020)
list - List all tasks, or all tasks on a certain dateFormat: list [yyyy-mm-dd]
Example of usage:
list 2020-09-30
Expected outcome:
2. [E][X] hello (at: 30 Sep 2020)
find - Search for a task using keywordsFormat: find <keywords>
Example of usage:
find hello
Expected outcome:
1. [T][V] hello
2. [E][X] hello (at: 30 Sep 2020)
bye - Exit the chat botFormat: bye
Expected outcome:
Window closes.