Combined two conflicting PRs and removed user files

This PR combines two PRs that are good and would have conflicts. Then it removes the SUO file which is a user file and should not be in the repo. Lastly, it also includes the git ignore file which should be used to manage the satellite files generated by the build tools.