Added a new logic module for searching.  Items in this module generate closures with built maps that are used for searching without needing to re-read the files.
Added OverloadedStrings extension.  It saves me from having to write T.pack everywhere there is a string literal.  The code is overall much cleaner this way.
Pulled out Get from SharedStash and put it in Crypto.  Changed name from GameFile to CryptoFile to generically mean any TL2 crypted file.  Also used phantom types on CryptoFile so it can be used to type check particular CryptoFiles, such as SharedStash.
Did a rewrite and reorganization of a lot of the functionality.  It is much cleaner now, but not all of the functionality is retained.
Made big progress on decoding bytes in modifiers.  Nearly have all the info needed to generate description strings like the game uses.
Fixed the Get Mod action to account for 00's at the beginning of the mod data.  Also added a few minor things.
Reformulated PAK functions to be pure.  Otherwise large parts of the code would be in the IO monad.
EUREKA! Huge numbers of mods are now being translated into item descriptions! This is a major break through.