The Ball, Launcher, Platform, and Goal classes (part 1?)

Update: Actually, don't pull this yet.

Here it is!

There are still a few things that aren't quite complete, but the basics are there, and I think other people can use this code when doing their own parts, especially Brian. He has to do the collision detection, and having the pieces defined already will help him a lot, I think.

Here's a summary of the main stuff:
- The ball was changed to be 25x25, and it eventually stops
- The launcher can launch balls, and the angle can be changed
- The goal is defined (the size is 60x60), although it doesn't do anything at the moment
- The platforms can be of any size (they'll be fixed to the grid soon)

And there are some basic controls that I put in for testing purposes:
- left arrow, right arrow: adjust the angle
- spacebar: launch the ball
- r: restart the level

There's also some not-so-obvious stuff that was changed. Notably:
- a console window now appears as well, for debugging purposes, so you can do Console.WriteLine() stuff
- a Dictionary is being used to hold all the Texture2D objects that are created by Content.Load()
- .gitignore now ignores thumbs.db files
- other stuff that I always forget when I write these things

And there's a lot of TODOs in the comments that need to be done as well, but I'm content with what I have so far. I could delay this push request, but I don't want to keep it to myself any longer. I need to do stuff for my other classes too :\

If anyone wants to refactor this code, that would be much appreciated as well! It's kind of a mess in places, and it could use some interfaces...

Okay, that's enough from me. Feel free to play what I have so far, and let me know what you think! And actually, if you want to make a new branch for this pull request, that would be fine too.