In general, we try to avoid diving in teams larger than three. If we have four divers, we divide into two teams, but we may intend to stay together and dive as a group. It's just that, if conditions make it difficult to keep four in contact, each pair can still conduct and complete the dive.
Part of keeping people together is understanding the limitations of the diver's field of view, and utilizing whatever techniques you can to extend that range. In dark or murky water, this may involve the use of high intensity dive lights -- that way, for example, you can dive single file along the hull of a wreck, and still be able to stay in contact. In bright, sunlit water, team positioning is more important, because lights aren't as useful. Being aware that the diver behind or above is invisible can make things much easier. In addition, moving slowly, and developing an attention "sweep" -- What's my depth? Where's my buddy? Look at the fish . . . -- will help keep a team together.
Agreeing on a dive plan, including navigation, can help, too; if you all know roughly where you intend to go, even some buddy separations can be fairly quickly repaired.
I don't know where you generally do your diving. I know some instructors who can help develop situational awareness and team procedures, but none of them is really close to Des Moines -- Chicago, Detroit and Lexington are places where I know people.