Reimplement ZipFileRO in terms of libziparchive.
Narayan Kamath authored
This lets us share zip archive processing code with both
the runtime (Art, dalvik) and critical java code
(StrictJarFile).

This change also moves several utility methods to ZipUtils
and dedups code across several zip inflation methods.

One of the side effects of this change is that several
processing loops are now O(n) instead of O(n^2).

bug: 10193060

(cherry picked from commit afd31e08)

Change-Id: I86a2c528575d4a3ca86b94be068dcdc3c17c2ed6
5a74e2df