Unify defaultdict arguments

As an example, we used both `defaultdict(int)` and `defaultdict(lambda: 0)` for the same thing. Since `int` is more idiomatic, prefer it over lambda constructs. In particular fixes funny stuff like `(lambda: set())`.