Changed some things that Nic brought up on GitHub.
Changed our arrays back to sets
Fixed stuff. Crossovers is using closures now.