Just a quick note to yet you know of a few changes to launchpadlib for branches. Mainly because I've removed a method that I know someone is using.
You used to be able to get to the branches for a project by saying my_project.branches, but I've removed this. It would have been nicer to deprecate it but we don't have a nice deprecation method right now for launchpadlib, and since it is still in beta, I didn't feel too bad.
The branches of a project was an attribute, now we have a getBranches method. The old attribute would give you all the branches of the project, including the merged and abandoned ones. The method defaults to give you the active branches, and allows you to pass in the statuses that you'd like to get.
Also with this change you can now get the branches for a project group, or the branches owned by a person using the same getBranches method call.
Project groups also grew the method getMergeProposals in the same way that the method was already available for people and projects.
Please file any bugs on the launchpad-code project on Launchpad.