added classes for better code understandability
added score system