I use the ISP-PRO system from Basic Micro. (Came with the MbasicPro package). It's ok but kinda buggy at times and doesn't support as many chips as some of the others. The biggest problem with Basic Micro stuff is that they have ZERO tech support and customer service.
I think I will be getting an Melabs Epic programmer and selling off all my Basic Micro stuff shortly, gonna move to Proton Picbasic+
Check out the www.melabs.com site, I think they have some of the best stuff around.
The programming software is pretty much included with any programmer you buy I do believe. You can go to basic micro's site and download their programming software to have a look at it, but it's useless without the ISP-PRO.
I (obviously!) use WinPicProg, the actual programmer board I use is a version of the P16PRO40 - it was sent to me by a Canadian who uses my software, he added a socket for ICSP to the P16PRO40 circuit, and even managed to amke the board smaller.