Use lists for hooks collections

because sets require a comparator over functions