Merge from current master

The imaginary pull needs to be made up to date with the existing master.