Phase I: add new usage and a function for find_intersection (replaces is_subset)