use Sets instead of Lists

@williamboxhall The inputs/outputs shouldn't have duplicated elements and the order is not necessary.
I am not sure about this limitation... some people may desire to retain order in these lists. Like for example, I was thinking it might be nice to have `Clump.sourceZip(repo.orderedFetch)` which matches the inputs with the outputs, 1-to-1. I think the API should be flexible enough to allow lists if people want to use them