Refactored the Class files in to seperate files - for easy readability