Hello,
Here's what I'd like to arrange:

a) any (logged in) user can edit the contents of a node created by any other user.
b) they cannot unselect "create new revision" nor can they delete the node

I think this will mean that no user can do permanent damage to the pages (all changes are version controlled) but modifications are visible immediately without intervention from an administrator.

Q1) Have I missed a configuration option which allows this to be done without a code change?

Q2) A few extra lines in flexinode.module allows me to make this configuration. Is there a downside to my implementation? What do I need to do to have this incorporated into future versions?

   if ($op == 'update' || $op == 'delete') {
     if (user_access('edit own '. flexinode_node_name($node) .' content') && ($user->uid == $node->uid)) {
       return TRUE;
     }
   }
+  if ($op == 'update') {
+    if (user_access('edit other '. flexinode_node_name($node) .' content')) {
+      return TRUE;
+    }
+  }
 }

 function flexinode_perm() {
   $perms = array('administer content types');
   foreach (flexinode_content_types() as $ctype) {
     $perms[] = 'create '. $ctype->name .' content';
     $perms[] = 'edit own '. $ctype->name .' content';
+    $perms[] = 'edit other '. $ctype->name .' content';
   }
   return $perms;
 }