Add a more complete gitignore

Add a gitignore based off of the [github gitignore](https://github.com/github/gitignore) project. This adds ignores for the 3 most popular IDEs as well as full ignores for all those stupid osx files.

By the way, those gitignores are available via the [github API](https://developer.github.com/v3/gitignore/) so if you really want to make this a seed project you could compile this dynamically.