Once you have an IBuildDetail getting the associated changsets used to be accomplished with:
buildDetail.Information.GetNodesByType(\"AssociatedChangeset\")
For those interested in getting the current builds list of associated commits (after associate commits since last good build is called) the following code is helpful.
var envVar = context.GetExtension();
var commits = envVar.GetEnvironmentVariable>(context, WellKnownEnvironmentVariables.AssociatedCommits);
This is nicer than the marked answer for the current build as you get back the type safe object.