- Changed doc as suggested.
- Changed method name to add/remove as suggested.
- Change Worklist to have a head entry cutting down on repeated logic as suggested.
- Tried using immutable.Vector as suggested but results are less than optimal even though much less code. Potential for performance problems. Resorting back to WorkList.