This is probably not the best answer I can give now, but consider Cyclic Coordinate Descent (CCD) which works for non-invertible Jacobian matrices. A short video here.
The best source covering CCD is Chris Wellman's own MSc thesis.
For a minimal/short review, you can read this source that mentions most methods out there.
A more mathsy paper (for the researcher in you :D) is this one http://math.ucsd.edu/~sbuss/ResearchWeb/ikmethods/iksurvey.pdf.
For the hardcore researcher: http://matwbn.icm.edu.pl/ksiazki/amc/amc19/amc1941.pdf
This seems like a hybrid method, although they're just slides with mostly familiar notions: http://cmp.felk.cvut.cz/~hlavac/TeachPresEn/55IntelligentRobotics/KjchoInverseKinematics.pdf
One more worth reading: http://www.cns.atr.jp/erato/DB/PDF/tevatia-icra2000.pdf
Since you said you'd rather have free sources, I'm not gonna mention the few books that one can buy from Amazon that tackle this problem.
Personally, I am satisfied with CCD. For ultra precision, I prefer the Inverse Jacobian (where I know the system yields an invertible matrix thanks to the 6 DOF of a robotic rig).
How can IK can be used? Mostly when you want to animate a character by supplying only a position and orientation of an end effector of a certain limb. (youtube for examples). If you want to start a career in robotics, IK is a must if you're dealing with articulated robots. In the world of gaming, it's a must when you employ motion detection of human gestures via a camera (e.g. http://www.youtube.com/watch?v=HSradQVj26E - my simplistic example of a wiimote interface and a ccd virtual robotic arm).