Merged with upstream master

Updates to many major files