re-re implemented springs
starting refactor