Created by: shs96c
JarInputStream.getManifest()
only looks at the first two
entries of a zip to find the manifest. The way buck builds
jar files meant the manifest was the last entry in the zip
and that's clearly Not Right.
This diff also means we correctly merge manifest sections, rather than using a "last in wins" approach.
Finally, we now read manifests from directories & not just zip files.