aggregate changes from many contributors

This pull request is derived from a collection of contributors, as documented in the CHANGLOG file