Properly parse for situations when there is no additional operand for an additional argument
Updated system test for create using description

--description, -desc, --information, -info, -a
System test for create using time

--time, -t
System test for create using deadline

--deadline, -d
Merge branch 'master' into parser/Victor
Added CommandType Help
Removed static variables `_argsMap` and `_cmdMap` (along with related methods) from `AdditionalArgumentImpl` and `CommandImpl` respectively.
Added them to `ParserImpl` instead.
Changed constructor for AdditionalArgumentImpl
Transferred all validation and initialising from AdditionalArgument and Command to ParserImpl
Merge branch 'master' into parser/Victor
Slight refactoring
Stopped using exception for control flow.
Invalid Command will now be returned instead of an exception.
Moved unit tests to ParserImplTest.java
removed file CommandImplTest.java
Refactored method feedbackForShow to feedbackForRetrieve
Improved look of show command
 - Will now say it is showing all or, the specific task number.
 - Added details of task when showing only one task.

#48
Added output for Search

#55
Added more details to feedback message for add

#57
Added more details to feedback message for update

#57
Added systest for retrieve
Updated systest for retrieve, added for update
Updated update, added delete

Delete check corner case first and last index
Made parser instance class private, refactored showWelcomeMessage()