The application we will describe is inspired by a pool table. We have fifteen balls, a cue ball, walls, holes in the corners.
To be honest, this isn't billiards, this isn't pool, it's just a bunch of balls bounding around a table so as to illustrate a variety of object-oriented techniques.