Arduino software programmer sketch, supporting ISP, HVSP, and HVPP
For details, please consult the User Manual
I'm still putting the finishing touches on the release, so while all three programming methods have been tested briefly, this has not been done in sufficient detail for me to be truly comfortable with letting others try it. But hey, this is open source, so go ahead if you like living dangerously!