Test created for within period check

Refactored viewWithin period, fix, datePair != null, it can never be
null. //redundant code.
Add displaying id in viewAll and viewPeriod
Refactored date related test to DatePairTest

First commit
Merge branch 'export_support'
Merge branch 'master' into interface
Refactor Command class to include datePairs

Now for add and update, Command will contain a datePairs ArrayList
instead. For search, viewRange will be used.
Added non-logic validation for Parser

Non-logic issues such as missing variables and parameters are now
validated and return with an error message to the user. However, logic
errors such as invalid task id etc are still not caught.
Refactored output formatting and UPDATE logic

Made UPDATE work with the new command changes and refactored output
formatting into more readable and cleaner code.
Merge branch 'interface'
Merge branch
Fix bug for add command where date not registered
Merge branch 'interface'
Fixed how Parser creates DatePair

Now when one date is accepted from user, it will always be assigned to
`endDate` instead of `startDate`.
Added "next week" support for Parser

Now it gives a date range for next week instead of just a relative date
of +7 days.
Merge branch 'interface'
Hotfix for #46 regarding DELETE command
Added completed variable in command for VIEW
Merge remote-tracking branch 'origin/master' into search_logic

Conflicts:
	src/Logic.java
	src/Parser.java
	src/Task.java
	test/DatePairTest.java
	test/LogicTest.java
#50 fix bugs of nullpointer when input wrong task id
Merge remote-tracking branch 'origin/master' into search_logic