The background is that Forum Containers and Forums needed to be visible to all visitors to a site BUT posts were to be able to either be visible to all, hidden from anonymous or hidden from the first or second level of registered user, as decided by the thread creator.
We used Drupal core forums, Forum_Access with it's dependency ACL, Content_Access, and Module Grants to make them play nicely together (which they did right at the end) alongside CCK and Rules.
The Forum_Access was checked for all groups to 'View this Forum' and it's priority set to 5. Anonymous was left unchecked in the second column 'Post in this Forum', and the settings for Edit Posts and Delete Posts were checked for the higher user groups that by default have the 'Administer Nodes' User permission.
The Content_Access on the Forum content type (node in Drupal-speak) was also set to disallow anon and the first 2 levels of user, and here is the clincher, the priority was set to 7. Setting the weight like this does throw a warning in Forum_Access but that is okay.
The Forum content type then had 3 check boxes added representing the different roles/ user groups.
Rules were created so that when 'Content was saved' each check-box was inspected and then the action was to 'Grant Content Access by Role' in addition to the default content access permissions.
Additionally of course the User permissions were adjusted so that a lower lever content creator could not see the check-box(es) to publish to higher level groups (you don't want them getting an inferiority complex)
Hope that helps someone. Please leave a comment if it does :)