More shield/armor and less PROTECT; specialized data.frame rownames setting