reduce array allocations, like, a ton

use `self.inherited` instead of `ancestors`.
sane-r style
watch spec files, duh
add a couple of additional specs