Example of a flocking algorithm based on Craig Reynolds' three rules - separation (avoid), alignment (copy), cohesion (centre). Uses OO principles in creating autonomous agents (boids, to use Reynolds' term, aka Things in my code). Vector maths and an Euler integration physics engine. This example formed the basis of an WSA iLab workshop, mainly attended by students from BA Games Design and Art. Nov16.