GPU will definitely be the most important consideration, although I'm not sure less than $500 is realistic for a development laptop. Usually you spend extra on development computers so you can save time. Getting a cheaper development machine means you'll need to run release builds instead of debug builds far more often, and that's harder for debugging. You'll also have to optimize earlier and more often, which will probably lead to development effort that later gets thrown away anyways.
To help provide guidance:
The only time a GPU becomes essentially important is when you are considering cross platform support or are pushing graphics to the very limit of it's hardware capabilities. For example, when tackling code in a Mac/Linux/UNIX environment, OpenGL will be used, over DirectX, Direct3D which is exclusive for Windows. This fundamental difference would decide whether or not it would be safe to go ATI or nVidia alone. When pushing hard on graphic hardware, that'll narrow the choice of the GPU even further. However, for a lesser hardware critical game, it's better to go toward a middle ground, such as an Intel or nVidia simply for the sake of compatibility. Computer animators on the other hand, have a vigorous requirement, but that's a different subject altogether.
Now, while a GPU can be the most important feature for gamers, and are important for programmers, it is not the most important role for developers. In fact, if we had to talk about hardware at such a low level, I would say, in that low level requirement, a CPU and associated BUS on the mother board would hold a greater importance because of the compatibility needs of the compiler. But frankly, even that's not true for a higher level design paradigm because essentially, the OS takes care of almost all of that for you, even on Linux.
To the point at hand:
What I would do is focus on something with a strong processor, that has as many threads as you can get, and has a proven track record for reliability. Games are typically designed to be thread dependent. I would suggest an Intel Processor within the i series for the sake of running fast compilations and executions. You want loads of RAM and a fast hard drive because nothing sucks more than a IDE that crawls and crashes. Don't worry too much about HD space though, as you should get in the habit of backing up your data on portable media, a CVS or SVN regularly, all of which should not be on your system to begin with.
For a GPU, I would highly suggest staying away from anything that is ATI simply due to cross compatibility reasons. While nVidia is a wise choice for a GPU brand, adding a reasonably good nVidia GPU along side with a i series CPU on any laptop usually brings the cost fairly high because the i series CPU's have built in graphics support, essentially having 2 GPU's in one system (a luxury or in your case, a feature as a programmer depending on your role and needs).
For more information on nVidia GPU's, I would suggest visiting this site, and narrowing your search down further to what you need: http://en.wikipedia.org/wiki/GeForce
Remember, you want to cross check the GPU you are interested in with any platform you may be interested in focusing on. A simple Google search for a GPU type and a Linux Distribution can bring up a lot of information for you just for developing on Linux alone.
For CPU, I recommend an Intel iSeries. However, you can review a list of CPU's and get a genuine idea of which one ideally works for you by going here: http://www.cpubenchmark.net/
I don't do game design, but I do play games, and I do develop code in Java. I wanted a cheap laptop that was a good middle ground for all of this. I found that a AMD A8 Quad Core with a ATI Radeon GPU stood on equal ground for gaming to a i3 and some i5's, met my requirements for coding, and dropped the cost by $300. Plus, I got even more than I could have expected. I honestly thought League of Legends wouldn't run on it, but I was proven horrible wrong when it rocked the game.
As for laptop brands, that could be important as well due to driver support and general reliability. In such cases I would suggest a Lenovo, HP or in some cases a Dell. I personally got a Samsung, but my focus is not game development so I can't suggest that.
Unfortunately, I can not give you any recommendations on sound support, as that is way outside my support and interest scopes. Hope this helps, best of luck.