Please note that I did almost nothing to fix this, so almost all the code is by @rifj190 I just put some scripts into run without screen refresh blocks and re-centered the DNA by changed some of the list setup Booleans.
Check out the original project.