corHMMDredge no longer proposes structurally invalid
models during simulated annealing. The "drop" move could remove the last
remaining free rate, producing an all-NA index matrix; this gave a
no non-missing arguments to max warning and an
invalid 'times' argument error, which was caught internally and so
did not affect the returned models. Proposals are now checked at every
rate category: a model must retain at least one free parameter and no
state may be isolated (NA in both its row and its column). Irreversible
models, in which a state has rates in only one direction, remain in the
search space. corHMMDredgeBase now also rejects a degenerate
rate.mat with an informative error.
Because invalid proposals are no longer generated, the random
number stream during a dredge has changed. Runs using seed will not
reproduce the trajectories of earlier versions. Dredges with hidden rate
categories may also skip degenerate models they previously fit and
accepted.
Equate/DropStateMatPars will take empty lists (and
return the original matrix)