find_emph_char should starts from the beginning

This fixes bugs for edge cases of pattern:

    opening  backtick  ending  [any]  backtick  [any]  ending

Examples: *`**`* and __`__`__

Range handling in 48a19b3 and e7bcbe3 is also changed to match the
correct behavior.