Adding Queueing Functionality / Exponential Backoff

Ugh... I suck at rebasing. Anyways, this pull request completely re-writes the library into a queue based solution. It uses php-resque to store the pending messages. A worker loops through and then tries to send the message via GCM. If it fails, it adds it back into the queue with exponential back off. It also abides by the Retry-After header. It also uses php-curl-class for easier unit testing / readability.

Things I still need to do:
 - Update Unit Testing
 - Support the new notifications stuff (This is still in beta so once my account gets approved then I'll be able to implement it) https://developer.android.com/google/gcm/notifications.html