Preliminary update for new GoogleAPIs

I updated your code to match the new GoogleAPI invocation requirements such as Project-KEY and JSON data response.
It's a preliminary implementation, some code cleanup is required and some features still need to be ported.
lets add our own exception in the Exception namespace. something like GoogleSearchException extends RuntimeException. that way, a controller can catch the exception specifically if he wants to display a standard message.

i would use the same exception then for all the cases below.