Updated "original" version with changes from Cecelia and Rocky

These changes were completed before the boulder-workshop and
coupled-system versions, so they do not take those contributions into
account.