Merge unity-staging

Everyone who has made commits included in this PR has explicitly approved that their changes can go into unity-trunk.