Evaluate and cache text sections properly

This pull request fixes #1065. Caching was done under the assumption that in a text sub section all expressions contain the same content making a simple template like the following fail:

```html
<h2 class="{{#shown}}foo{{/if}} test {{#shown}}bar{{/shown}}"></h2>
```

The solution is to cache the evaluators for normal property lookups (like `{{style}}`) to improve performance but always create the evaluator when the mode is set (which means that there potentially is a different subsection).