Rename rs5.py -> rs5file.py
OOify the RSFile & chunk decoder
Convert rs5-extractor to use new OO Rs5File types
Fix a bunch of issues with Rs5ChunkedFile
Make environment.py & data.py use OO Rs5File
Add DDS file decoder

This is rather slow and not likely to get much faster. It also only
supports one pretty specific type of DDS file. For working with these
files you are probably better off using nVidia's DDS utilities.

This gives me a way to access images directly though, which is useful
for some of the mapping scripts.

The alternative implementations I looked at either didn't seem to
support DXT5, or failed to supply a pre-compiled DLL and stable Python
bindings (I don't mind telling any Windows users to install Python +
PIL, but I don't think it would be smart to ask them to install MSVC and
build some random library after patching it so it will even compile...).
Plus, I learnt a bit more by writing this myself.