Use lock free strategy for several Subscription implementations

Reduce contention by using CAS (Compare And Swap) operations to replace
subscription in several subscription implementations.