merge from HEAD (mostly formatting to make it easier to see real diffs).