Add an immutable Point class, and a Path interface.