This should remove the errors in issue #1877 and #1869.
The real fix for not making the broken archives once the size is over 4GiB is pending an update to SharpCompress.
This should revert from using the "Archive" interface, which uses the central header, to using the "Reader" interface which scans the zip file looking for streams.
It is not tested as I do not have a zip file that exhibits the error yet.
Rewrote the backup and restore to work within a transaction as that speeds things up a lot.
Rewrote the backup procedure to generate the file list from the database, instead of on-the-fly as that is more efficient.
Re-arranged the database to use less storage on large sets of unchanged files.
Still needs a work over in terms of error handling, progress reporting, warning output, refactoring etc.
Also misses the volume reuse/reclaim algorithms.
But it passes the unit tests now, with and without a local database.
git-svn-id: https://duplicati.googlecode.com/svn/sandboxes/Kenneth/ForestHash@1526 59da171f-624f-0410-aa54-27559c288bec