Smileys without image button doesn't make sense.
Minor fix.
Added skipRoot argument for fragment#forEach.
Implemented CKEDITOR.filter#applyTo reusing htmlParser.fragment#forEach.