Hmmm... I think we should add a `//` comment saying that `candidates` is provided as a mutable list. (That's following the practice of commenting why, not what.)
Or even better, transclude the jline docs - http://jline.sourceforge.net/apidocs/jline/Completor.html