Fix consumption of characters inside attributes.  The check against utf8iterator_current was invalid because the state machine doesn't consume characters unless it finds a match.
Delete two comments that are no longer accurate.
Fix infinite loop when a character is not detected.
Add fbreak to every Ragel action.  Ragel's scanner continues trying to parse tokens even after making a match; the accepting state is always the start state.  As a result, it would continue consuming input until it either reached eof or read a combination of characters that could not possibly be a character ref, and then would break out with the error state.  When we switched from looking for the presence of output to looking for an accepting state, this triggered the bug on some testcases which had prefixes of other char refs following the char ref.