Switch to AtomicReferenceFieldUpdater.
Changed to field updater
Merge pull request #1237 from akarnokd/SafeSubscriberMemory

SafeSubscriber memory reduction
Merge pull request #1236 from akarnokd/CompositeSubscriptionMemory521

CompositeSubscription with atomic field updater
JMH Tests for Simple Use Cases
Remove Subscription Wrapper from Observable.subscribe

Performance increase from 7.7m to 8.8m ops/second

Before:

Benchmark                              (size)   Mode   Samples         Mean   Mean error    Units
r.u.PerfTransforms.mapTransformation        1  thrpt         5  7714453.187   362218.633    ops/s
r.u.PerfTransforms.mapTransformation        1  thrpt         5  7527144.767   497816.471    ops/s

After:

Benchmark                              (size)   Mode   Samples         Mean   Mean error    Units
r.u.PerfTransforms.mapTransformation        1  thrpt         5  8853534.333   183494.242    ops/s
r.u.PerfTransforms.mapTransformation        1  thrpt         5  8806958.403   452595.219    ops/s
Merge pull request #1243 from benjchristensen/perf

Remove Subscription Wrapper from Observable.subscribe
Observable.from(T) using Observable.just(T)

For code like `Observable.from(1)` Improve performance from ~3.9m to 4.5+m ops/second

Before;

```
r.u.PerfTransforms.flatMapTransformsUsingFrom        1  thrpt         5  3923845.687    46657.660    ops/s
r.u.PerfTransforms.flatMapTransformsUsingFrom     1024  thrpt         5     8924.953     1983.161    ops/s

r.u.PerfTransforms.flatMapTransformsUsingFrom        1  thrpt         5  3623228.857   490894.492    ops/s
r.u.PerfTransforms.flatMapTransformsUsingFrom     1024  thrpt         5     9176.330      923.929    ops/s
```

After:

```
Benchmark                                       (size)   Mode   Samples         Mean   Mean error    Units
r.u.PerfTransforms.flatMapTransformsUsingFrom        1  thrpt         5  4052364.587   100971.234    ops/s
r.u.PerfTransforms.flatMapTransformsUsingFrom     1024  thrpt         5    11682.783      496.656    ops/s

Benchmark                                       (size)   Mode   Samples         Mean   Mean error    Units
r.u.PerfTransforms.flatMapTransformsUsingFrom        1  thrpt         5  4700583.987    77742.037    ops/s
r.u.PerfTransforms.flatMapTransformsUsingFrom     1024  thrpt         5    12588.803       58.935    ops/s
```

Using this test:

```
../gradlew benchmarks '-Pjmh=-f 1 -tu s -bm thrpt -wi 5 -i 5 -r 5 -prof GC .*PerfTransforms.flatMapTransformsUsingFrom*'
```
Merge pull request #1244 from benjchristensen/from-just

Observable.from(T) using Observable.just(T)