Multiple template engines

This PR contains the bulk of the multiple template engines project.

It's still missing tests for the new code in django.template.loaders.
This raises a ``TypeError`` if context is ``None``. This happens if I set up a jinja2 engine and the following url:

```
urlpatterns = [
    url(r'^$', render, dict(template_name='index.html')),
]
```