Add Transform.take
AtomicLong is unnecessary here due to non-concurrent calls to onNext, going with a volatile var
Doesn't need to be volatile, we have guarantees
Add Transform.takeElements and dropElements