fix(ledger): guard against nil DReps in GetDRepState
Defensively skip nil entries when building the GetDRepState result so the dereferences (drep.Credential, drep.ExpiryEpoch) can't panic. The current contracts already prevent nil — Database.GetDrep returns ErrDrepNotFound rather than (nil, nil), and GetActiveDreps yields no nil entries — but the guard covers both the filtered and all-DReps paths at the dereference site and is robust to future contract changes. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]> Signed-off-by: Chris Guiney <[email protected]>