Avoid unnecessary calls to get_parent_xblock in _course_outline_json

When calculating _course_outline_json's `xblock_studio_url(xblock)` we hit Mongo database often, but mostly because methods used in `xblock_studio_url` (`xblock_has_own_studio_page`, `is_unit`) are calling `get_parent_xblock` a lot. This change tries to reuse information about parent_xblock when possible.

Reduces rendering time for Justice course from 5.5 to 3.2 seconds for me.

review: @cahrens @dan-f
is_unit(parent_xblock, parent_xblock) is not intended at all. I overlooked that it is is_unit(parent_block), not is_unit(xblock) like in other places. Now I am thinking about how to get around the lookup for parent of parent_block, because that lookup is killing the whole performance gain..

I do not see how parent_block would be retrieved twice after 84, it is retrieved only when it is not passed as a parameter.