remove lodash dependency
use names for objects
refactor how Intersection points work