Fixed some minor issues

- handle the case when a dangling internal node overlaps with other
nodes.
- update the worksheet semantictypes according to the suggested model
- use userSelectedSemanticType if exist (rather than
crfSuggestedSemanticTypes)