Templates

Given the size of django-ace and other libraries, it's probably best to view this PR as individual commits.

This adds some new models and code to support the idea of Snippet Templates, which are premade blobs of snippet code with blanks that admins can fill in. It replaces the previous blob of code that each snippet had.