catch exception
Merge branch 'master' of https://github.com/cs2103aug2014-T13-2J/main

# By mervynwee (7) and Nee Si Yao (4)
# Via mervynwee
* 'master' of https://github.com/cs2103aug2014-T13-2J/main:
  Reimplement if the user does not provide a date, the task will be set to the current day's date. Accidentally removed it in the previous commit.
  If the year is not specified by the user, the current year will be appended, unless the date for this year has already passed. In that case, the following year will be provided. For example, if the current date is 30 June 2014, and the user input 29 June, then the task added will be on 29 June 2015.
  If the user does not input a time for the task, it will be shown as a all day event on google calendar.
  If the user does not provide a date, the task will be set to the current day's date.
  Fix the bug for updating tasks for which start time equals end time or start date equals end date. Previously, updating the start time or start date will cause the tasks not to update the end time or end date, and the duration of the task will be lengthened, instead of keeping the start time and end time equal, or start date and end date equal. Now updating start time or start date for tasks which have equal start time and end time or start date and end date will cause both the end time and end dates to update to the new time or date also.
  Fix the bug for updating tasks for which start time equals end time or start date equals end date. Previously, updating the start time or start date will cause the tasks not to update the end time or end date, and the duration of the task will be lengthened, instead of keeping the start time and end time equal, or start date and end date equal. Now updating start time or start date for tasks which have equal start time and end time or start date and end date will cause both the end time and end dates to update to the new time or date also.
  Rewrite GoogleCalendar to allow one-time authorisation for login. Add javax.servlet.jar to library. Edit gitignore to ignore credential file.
  Implement more comprehensive testing for LogicTest.java.
  Refactor GoogleCalendar for abstraction. Sync add/delete/update only requires calling googleCalendar.sync...
  Remove unused library.
  Fix bug by editing the while loop condition in readFromFile().
DisplayHandler displays '-' instead of 'null' when there is no venue.