Some refactoring of KineticsFamily.__generateReactions().
Some refactoring of KineticsFamily.__generateReactions().

This refactoring is intended to speed things up a bit by reducing the
number of calls to generateResonanceIsomers(). To accomplish this, the
steps of removing reactions that don't match a given set of products
and combining reactions that give the same products are once again
performed separately.

The refactored algorithm also removes some duplicated code.

enochd/RMG-Py,KEHANG/RMG-Py,comocheng/RMG-Py,chatelak/RMG-Py,comocheng/RMG-Py,pierrelb/RMG-Py,faribas/RMG-Py,nyee/RMG-Py,chatelak/RMG-Py,nickvandewiele/RMG-Py,pierrelb/RMG-Py,nickvandewiele/RMG-Py,KEHANG/RMG-Py,enochd/RMG-Py,faribas/RMG-Py,nyee/RMG-Py