Having DJ'ed for 5 years, here are my thoughts:
What are you going to be doing while DJing? Playing live at club/bar or private event? Making mixtapes? Scratching? I only have experience playing live and all I need is Serato Scratch Live on my Macbook. That software, once connected to equipment, allows you to do almost anything with your mp3 collection. It is very intuitive.
As far as equipment goes, I live and die by Pioneer CDJs. They are not budget by any means, but I've used dozens of cheaper alternatives and they all are unimpressive in some major way (imagine pressing the cue/play button and there being a half-second delay...completely effs your mix). Denon CDJs are the only other ones I've experienced that really come close to Pioneer.
If you're looking to scratch, however, I highly suggest Technics brand of equipment (old-school vinyl). CDJs do come with scratch but it just doesn't feel quite the same as scratching on vinyl. Technics are also quite expensive.
When I started DJing, I spent roughly $4000-4500 buying all the equipment, computer, and software necessary to do it and I was able to make that back in about one year (but I also had very useful connections in the nightlife industry). You could probably make that back MUCH faster if you were able to DJ private events like weddings.
A lot of people might disagree with my advice, but I'm also slightly old school in my tastes for equipment. I have not really done too much research on the most recent equipment available and any developments made by other brands since I already bought all my equipment several years ago. But these are my two cents.