Added TODOs and hashCode/equals/toString methods