Fix various rewinds when embedded NULs are involved

`strchr("foo", '\0')` returns non-null, who knew.
Make sure buffer rewinds don't rewind past the start of the buffer.
Don't autolink bare email addresses

This fixes an issue where the beginning of an email would have its
underscores treated as emphasis delimiters, then would decide it
was an email when it hit the '@'.

Since there's no easy way for the rewind code to account for that,
and it can rewind back into the middle of a tag, we just don't
touch bare email addresses.
Guard against table markdown bombs
Bump to version 1.2.0.