Updated way of authorizing Google Calendar token

Why is this change necessary?
- Previously, GoogleCalendarManager could not recover if the key had
  expired.

How does it address the issue?
- By developing an algorithm that checks allows GoogleCalendarManager to
  check whether the key is valid. If the key is valid,
  GoogleCalendarManager uses the existing key to create a Calendar
  object. If the key is invalid, GoogleCalendarManager will generate a
  new key.

What side effects does this change have?
- When the user is offline, GoogleCalendarManager thinks that the key is
  invalid, and prompts the user to generate a new key, even if the key may
  actually still be valid.