Combine hunks etc

Along with some minor "make this stuff more clearly private" cleanup, this implements a combine_hunks function to recombine hunks into a string, after it's been redacted.