All libraries should be refactored to remove the worst cases of spaghetti code. Desired outcome: * Executables and their includes should be able to be installed according to FHS on a Linux system. * It should be possible to build .deb packages that follow the Debian packaging policy for python software.