Reduce Ring Buffer Default Sizes (and lower for Android)

- This adds platform dependent checks to lower the buffer sizes on Android to use less memory. It also reduces the normal defaults as perf testing showed we didn't need to be as high.
- This adds System properties for overriding the defaults, `rx.ring-buffer.size` and `rx.indexed-ring-buffer.size`

Fixes https://github.com/ReactiveX/RxJava/issues/1820