Revamped DateParser implementation.
- Changed `ToDoAdd` to use new DateParser implementation.
- Added `InvalidDateException` will be thrown if date is not valid.