It's definitely not the case that package developers should ignore the release branch; in fact generally speaking unless you are developing a package which requires features only present on HEAD developing on the current release branch (oacs-5-1 now) is probably better. Also, bug fixes absolutely should go into the release branch if the release branch is affected by the bug (though it's fine to apply it on HEAD and merge it to oacs-5-1 or vice versa).
Release branches are feature frozen only for core, so for packages working on the release branch is not a constraint. It also means that it will be easier for people to verify the package actually does work on the release branch.
I am leary of creating lots of branches for package work (and don't think it's necessary unless you are going to break something for an extended period); branching is the prefered alternative to what we had been doing (which was putting branched versions of packages in contrib). I personally would like these package branches to be named in some way thats consistent (and when someone really does need to do it we should discuss it -- they should post or ping OCT first I think).