Cleanup DistanceConstraint.applyConstraint
Cleanup Vec3
Add ParticleSystem.each context arg
Update test list style
Add angular constraint

- add AngleConstraint
- add Vec3.angle
- add ParticleSystem.getAngle
Fix AngleConstraint for obtuse angles

Use law of cosines to calculate A -> C length
Fix AngleConstraint for very obtuse angles

Move particle B relative to projected position on AC
Fix solving AngleConstraint with coincident particles
Improve catching coincident particles in AngleConstraint
Update AngleConstraint

- add support for angle range
- fix issue when angle approches PI
Add AngleConstraint tests
Add ParticleSystem.perturb utility
Update Vec3

- add length, distance
- fix angle
Update jshint