Working thinLight, cleaned up several classes