refactored LifeField::neighbors method