- graph domain objects - operator polymorphism - how to specialize operators to BVPs but remain abstract?