What software can correct pronunciation?
Rossetta Stone has that feature standard. I've not used it, but I have friends who have with great success. Unless you get the tone correct, the software doesn't let you advance to the next word. It's pretty impressive.

Don't know of any free options, though.