Google TTS Caching Implementation

Adds a check in the playGoogleTTS function to see if the caching feature
is turned on. If it is, the phrase is hashed and a cache filename is
generated and checked for existence.

If the file does not exist, an HTTP request is made within Python to try
to retrieve the audio. If that request is successful, the file is
written to disk and that file's path is passed to the underlying mplayer
call rather than the original URL as before.

On subsequent calls, the file will already exist and it can just be
passed immediately to mplayer.
No Versioning for Cached Downloads

Configures a .gitignore in the new awesometts/services/cache directory
that will be in-use for downloading audio from Google TTS.