Thread-safe NSTimer alternative that doesn't retain the target and supports being used with GCD queues.