Provide more accurate sync feedback in code

Now isSyncRunned relies on the results of the inner most method in
GoogleController instead of just giving it “true” as long as the method
was visited.

Also improve user experience, instead of giving an error if the user
type “sync” before “login”, ChirpTask will perform “login” for the
user, and then perform “sync”.

Similarly, improve user experience, if the user types “login” even
though he is logged in, ChirpTask now does not show an error. Instead,
ChirpTask will initiate “sync” for the user.