Add ZipExtract
Add ZipExtract

Notes:
-This was taken from the Wedge SVN
-As noted in the file, @Arantor has authored it, who has given us permission to use it in #2593 (not  that it needs granted, since it *is* BSD, after all, but courtesy, and all of those things)
-Nao has not touched its working code that I could see
-All I did was change the class name and used our uniform file header

Signed-off-by: John Rayes <ba3d22da798d757dab9b2dc43457aa88ac5be53f@gmail.com>

georaldc/SMF2.1,StealthWombat/SMF2.1-more-forkery,margarett/SMF2.1,mkress/SMF2.1,margarett/SMF2.1,mkress/SMF2.1,MustafaCan/SMF2.1,mkress/SMF2.1,georaldc/SMF2.1,MustafaCan/SMF2.1,StealthWombat/SMF2.1-more-forkery