Changed implementation and changed texture subsystem to use IL instead of SOIL