basic geometry classes and utility functions defined. update if needed