to summarize: virtual dj has midi control and relative wave form display.
it not only shows you a wave form of the active deck, it shows you the wave form of the other deck in relation to the active deck and it takes full width of the screen to show you. virtualdj has what i like to call a 'relative wave form'. but their waveform is not relative to the other deck. traktor does have a wave form (though it's kinda crappy) and their control is very much advanced.
so that puts all the serato line out of the equation. itch and dj intro both have controllers that have hot cues and also the best 'wave form' but they also force a worthless mixer in your dj setup. scratch live requires a timecode, but then it also requires a seperate controller for hot cues. in my opinion serato has the best wave form but the worst midi control. to tell you the truth, i'm always looking for something better than virtualdj (effort to be open minded and not ignorant), but i can't seem to ever find it.