have the given `'deas_template_source'` engine opt as a context ivar

This updates the source to allow passing the `'dea_template_source'`
engine option down to the context class intances it renders the
templates against.  This means the deas template source is exposed
to the templates as the ivar `@deas_source`.

This is needed to implement template helpers that render other
templates (ie `partial` and `capture_partial`).  These helpers need
to have access to all the rendering behavior that a top-level Deas
render call would have.  To do this they need access to the deas
template source in use.

Specifically, this will allow rendering partial templates that require
a different engine and also rendering templates that use multiple engines.
Without this, you could only render erb templates from an erb template.

@jcredding ready for review.