ignore __END__ unless line-head

Though __END__ can be put in the middle of a line, I think it's much rarer than quoted __END__ (for example, Parse::RecDescent has the latter). It's probably safer to check __END__ only at the head of a line.
Merge remote-tracking branch 'remotes/charsbar/ignore_data_section_unless_linehead'