build: better support for symbols on the same line (#397)
The order in which universal-ctags outputs symbols reflects the
hierarchy defined by the detected language. In general, we cannot assume
that symbols on the same line appear in ctags in the order according to
their byte offset.
With this change we tolerate any order of symbols as long as they don't
overlap.
We should now detect more symbols at the cost of more CPU.