`substract`: take CountedSet instead of Iterator
`update`: take CountedSet instead of Iterator
`n_most_common`: return value instead of reference
Implement Clone and make `update` return a new CountedSet
`subtact`: return new CountedSet instead of mutating
Add more HashMap aliases
Add `intersection`