Takeout some commits from mono/master.