tweaks to core::iterator