Refactor AmicableNumbersGenerator so .generator returns an Enumerator with restart