refactorings
refactor all out of main loop
plants borken
foo