Improved parser by supporting new terms

- Now support auto expansion of next [week | month | year].
- Fixed that if no time provided, it should always be 2359 and as for
date range with no time provided it is always from 0000 to 2359.
Merge branch 'parser_enhancement'
Updated Javadocs and comments
Added Master Test Suite for JUnit4
Merge branch 'master' into parser_enhancement
Added getter for DateId for CONFIRM command

Was forgotten in previous commits.
Merge branch 'parser_enhancement'
Fixed certain bugs and revamped ParserTest

- ParserTest is now currently more updated and has a wider test
coverage.
- Parser now ignores certain arguments that exceed the number of
accepted arguments.
Merge branch 'parser_enhancement'
Modified formatting support for tentative tasks
Changed the welcome screen

Now the welcome screen shows all tasks that are due that today or
within the period of today. Allowing user to see what he needs to do
for today.
Merge branch 'welcome_message'
Temp fix for NullPointerException in Task.getEarliestDate()
#76 fix failed test DatePairTest.endDateStartBoundary2()
Added tentative to description for tentative task

At the moment it looks bit confusing without the tentative added into
the description. Thus, added for clarity purposes.
Merge branch 'tentative_task'
Merge branch 'master' into tentative_task
Fix confirm non-tentative task show proper response
Merge branch 'tentative_task'
Added function to check for conflicting task

Refactor logic test as well, as it affect the test cases.