Updates to WebClient - recursion limit, link visiting fixes

-Updated LinkListener interface - consolidated to single "onVisit"
method since internal/external can be determined from passed in link
-Ensure links are really only visited once
-Added depth limit to avoid excessive exploration in deep sites