Add the Text element to allow setting the text based on context

Step 2 of #64. This did some major breaking changes on the thmutil schema.

This pull request is #76 rebased onto the unsquashed version of #64.