Upgrade to Java 16
It'd be useful to start to use newer JDK versions, and get used to the new things they're doing, as well as the many performance benefits we can get from them.
Fortunately, this is a pretty smooth ride - bumping the version the Gradle toolchain requests, and the version that builds our pipeline (albeit it's not required, due to our use of the toolchain plugin).
This removes the need for custom JDK flags to use the backported JVM changes for running Java in Docker, and getting it to abide by the memory limits. We can instead replace this with only growing to 90% of the container's memory usage.
According to 0, this may not have been required anyway - woops!