Add geometry pooling to try and reduce memory leakage.
Fix some globals
Bezier lines use fewer vertices
Fix an off-by-one error, which was causing thin rainbow lines.
Update line geometry and tweens

- Fix geometry pool.
- Remove lines from the scene immediately after the tween reaches its destination (prevent reusing geometries that are already in use)
- New tween code with configurable step functions (using quartic ease-out by default)
- Each line is given its own random duration.
- Speed up the line tweens greatly.
Remove unused function