Move shared computer classes to .comp.*
Create immutable shared classes for simple data structures (e.g. Location)
Remove RandomPool

Replace the unnecessary RandomPool objects with plain java.util.Random
objects.
Make Packet generic and add socket-specific TCPPacket
Move creation of ProgramExecutor instance to Process (single responsability)
Rename DesktopProgram to ClientProgram
Add simple settings implementation using Properties
Add debug logging setting for enabling debug logging
Add more debug logging messages
Change ResourceLister to only providing a Path list

ResourceLister now only provides a list of Path objects that represent
all the resource occurrences. Any recursive listing can then be done by
the consumer.
Move ResourceLister to shared
Add IOFileUtils for (real) file manipulations
Add temp file manager for better temporary files
Add TWLSpritesheetGenerator for generating spritesheets and twl configs
Migrate old themes and images to new spritesheet generation system
Make ClientProgramWindow utility methods public
Add GPClientErrorEvent for generic program errors
Use GPClientErrorEvent in FileManagerProgram
Overhaul/rewrite server connection system to be more flexible
Add registry system for storing object lists