Added check to skip constraint calculation

skip accumulating force if particle is compared against itself
changed some names
moved force functions to particle class
optimized performance, refracted out particle

- Refracted out Particle class
- Change the way constraints are stored/calculated so during
update/rendering, we don't iterate over duplicate constraints (instead
of O(n^2) it is now O(n))
Added box, fixed JS set() bug

- Added Rigid box
- Fixed bug where PVector.set() would set z to NaN when z is 0
Fixed small non-rigid constraint bug

If boundary collision needs to be checked before satisfying constraints,
otherwise constraint distance will change, resulting in
semi-rigid-looking system
Initial SAT collision code

- Added initial SAT collision code
- Created new Collision class
- Removed "Dense" blob for now since it's not really working correctly
Removing Collision

- Removing various collision codes
- Starting work on rendering
Collision + Rendering

- Finished basic world collision + friction
- Added basic metaball rendering
Merge pull request #1 from slsdo/dev_collision

Dev collision