new working snapshot:
	cleaned up the code a bit
	messed around with TreeMaps; didn't work out
		at least most objects can be compared now