Changed toString() for better representation and updated equals() to use toString()