Beginning of Part 3, starting with the collider class