#15 add google oauth
merged @harrr's project and changed something.