move genetic to its own subpackage