cloned from http://oauth-php.googlecode.com/svn