add a way to specify hrefify function and max-depth