[g]dispweight returns attribute on degrees of freedom used ("df")

gdispweight finds d.f. directly from glm() and this is normally
constant for all species, but dispweight discards factor levels where
species does not occur, and degrees of freedom is non-constant for
species. The d.f. is used to divide the Pearson Chi-square to get
the overdispersion, and because d.f. is reduced for some species in
dispweight, these will get higher overdispersion and hence lower
weight in dispweight than in gdispweight. With this commit, the
same original Pearson Chi-square will be found for both dispweight
and gdispweight object:

attr(object, "D") * attr(object, "df")