Added ZoneMessage class, moved all that stuff to there; so much cleaner.