Removed unneeded extra locking, added RequeueCause to the requeue event.

Added logging facade, additional log messages in APNS.

Added debug level to allow for repetitive messages.

Fixed re-entrancy issues on timers.

Corrected potential infinite loop in Dispose().

Possible fix for PushSharp #157, dropped keepalive time to 20 minutes to compensate for crappy NAT devices.
Merge branch 'master' of https://github.com/bmatson/PushSharp into upstream