Added check for non-zero registered terminators
Switched GA's to classes to exploit inheritance