Implement support for ClassLoader.getResource.

This works for all cases except when adding an InputStream directly to
the JarClassLoader, which I believe is impossible to address via a URL.

I believe it makes JarClassLoader more closely match URLClassLoader's
behavior. In particular, one of the libraries that I was trying to use
was calling getResource() and JarClassLoader was returning a null even
though getResourceAsStream() for the same resource would return a
value.

Technically, the test I wrote passes even without the corresponding
changes; although, I don't know exactly why. It may be that there is
another separate `test/test.properties` on the classpath.

I actually pointed the test at a local JAR and tried to load a known
resource from it. This test would fail before the change, and now
passes.