This is a major change as sub-class are not guaranteed to call `Collections.__init__` because it used to be a no-op (the default) function.