Search for UNL Tails when close match not found.

When soft_idx and depth + 2 < len(unlList):

Our unlList begun to fail from very early in the outline, so we could search for a most probable node by doing the suggested loop.
It searches all the outline for the longest UNL tail that matches our UNL, and returns that node if there is only one concurrence. 

This would return the correct node in the cases we moved our tail branch to other part in the outline, and we dont have an outline in which we often repeat that tail (one concurrence only)

Im totally ok with not including this code, but I think it can be valuable to consider.

Here is a mindmap (i needed to do to deal with the logic) as per I understand this right now, and with the suggested improvement:

http://www.mindmup.com/#m:a163fd6c308c0e0131a3a9061afe82d2ba