you can use SQL out of the box without having to write code by using the SQLUM. If you want to get at roles you can use
SourceCode.Workflow.Management Namespace
but to just add destination users you can add them like this
// Add some destination users
SimpleDestinationRule destinationRule = new SimpleDestinationRule();
DestinationSet defaultDestinationSet = new DestinationSet();
Destination destination1 = new Destination();
destination1.Type = DestinationTypes.User;
destination1.Value = K2FieldFactory.CreateK2Field("K2:Domain\\User1");
Destination destination2 = new Destination();
destination2.Type = DestinationTypes.User;
destination2.Value = K2FieldFactory.CreateK2Field("K2:Domain\\User2");
defaultDestinationSet.Destinations.Add(destination1);
defaultDestinationSet.Destinations.Add(destination2);
destinationRule.DestinationSets.Add(defaultDestinationSet);
// Set the destination rule of the activity
awaitApprovalActivity.DestinationRule = destinationRule;