Improve internal data structures.  New extra field API (read only).
Added paranoid mode to zipcmp (compare more meta data).

Keep up-to-date metadata for changed entries, avoid parallel arrays.
XXX: Modifying extra fields API functions are stubs.  Old API removed.
diff --git a/regress/open_cons_extrabytes.test b/regress/open_cons_extrabytes.test
index 8fdf2cc..e154541 100644
--- a/regress/open_cons_extrabytes.test
+++ b/regress/open_cons_extrabytes.test
@@ -1,6 +1,6 @@
 # zip_open: file has extra bytes at end of archive
 program tryopen
-file testextrabytes.zip testextrabytes.zip testextrabytes.zip
-args -c testextrabytes.zip
+file testextrabytes.zzip testextrabytes.zip testextrabytes.zip
+args -c testextrabytes.zzip
 return 1
-stdout opening `testextrabytes.zip' returned error 21
+stdout opening `testextrabytes.zzip' returned error 21