Details of how the algorithm works. I'll get around to this someday. In the meantime check out the code.