Improve equals performance: no need to check for null; perform cheapest checks first. Use short-cut evaluation