Add static requireNonNull() method
This branch adds a requireNonNull() method for use in Java modules. (On Android, Objects.requireNonNull() will be desugared so it can be used with a Java 6 classpath, but the headless and desktop targets don't get desugared.)