Continuing with #15053:

- Global template source loader loader is now outside of ``find_template``
  making it easier to reuse it.

- I've also added the ``skip_template`` parameter to the ``select_template``
  function for the cohesion.

- Docs has been updated (only documented functions are ``get_template`` and
  ``skip_template``.