abstract over craph creation primitives