Fuzzy assign bio tags

allow assign the BIO tags with fuzzy match.  this can be useful when having some of partially labelled dataset.
 
with smart_join we might join the html tokens with text '(' or ')' which make the length of html tokens and tags not matched.