Cleanup template loaders

@prestontimmons Passing arguments in TEMPLATE_LOADERS is demonstrated in the docs for the cached loader. I don't think it's described as a general purpose mechanism though.

Yes, the locmem loader could be made a public API and yes, the docs could explain how to pass arguments to template loaders in general.

In order to avoid scope creep, I'm not going to add that documentation in this pull request. Could you create tickets about them and maybe submit a pull request?

Thanks!