Add ideal algorithm.
Fix typos, wording, and tweak distance formula
Another minor text cleanup.
Rename "ideal" to non-required
fixed merge conflict
Merge branch 'pthatcherg-master'