Use lock free strategy for SerialSubscription

Reduce contention by using CAS (Compare And Swap) operations to replace
subscription in SerialSubcription. A JUnit has been associated.