* Gradle Wrapper (all) 3.3 -> 4.1
* Gradle plugin for Android 2.3.2 -> 3.0.0-beta2
This requires upgrading the errorprone plugin to 0.0.11. Also, see
https://stackoverflow.com/questions/44196672/aapt2-compile-failed-invalid-dimen-on-android-3-0-canary-1
gradle plugin
* SDK Build Tools 25.0.2 -> 26.0.1
* Remove retrolambda
* Log error from subscription on PersistingStoreActivity for consistency
* Update dependency inclusion directives to those of the 3.0 plugin
Also, jsr305 and javax usages have been taken from compile to compileOnly
since they are not required beyond.
* Add dependencies that previously were resolved through leaked ones from other artifacts
Now dependency leaks are eliminated thanks to 'implementation' from the 3.0 version of the gradle plugin.
* Remove coupling between middlewares and cache
* Replace mockito-all by mockito-core
mockito-all causes problems related to hamcrest when used with JUnit. See
https://tedvinke.wordpress.com/2013/12/17/mixing-junit-hamcrest-and-mockito-explaining-nosuchmethoderror/
* Remove unused dependency.
* Build Tools 26.0.1 on Travis
* Suppress PMD.AvoidThrowingNullPointerException for the time being
* Avoid PMD synthetic accessor warning