Zimbra desktop might do what you want.
"The free Zimbra Desktop client allows you to meld the online and offline worlds – storing and synching your email, calendar, contacts, files and documents in the cloud, yet having them locally accessible when on the road. Zimbra Desktop aggregates information across accounts (Zimbra, Yahoo! Mail, Gmail, Hotmail, etc.) and social networks (Facebook, Digg, Twitter, etc.) to help make communicating & sharing information easier than ever. "
For IMAP email with Gmail, Roundcube gets a lot of mentions, but it won't help with calendaring or your address book. I have played with the app in the past and it looks pretty good.
While I was checking out another possibility, I came across GMDesk - not sure if it does what you want but just in case it's of interest: