Base class for Match & Set objects. Note that while it currently deals with points, it might be extended in the future. This class is extensible and can be implemented in different ways, but its role should be simple: For a given point, if it matches some criteria ("Match"), apply it some value ("Set"). It can be a lookup, a random process or something more involved.