add Comparable and do the others fixes