Hook in before template gets rendered
Is there a way to hook into the current request before the template gets rendered? 


Sure, Craft does this in several places in the Control Panel itself.

A plugin can registerCpRoutes hook.  From there, you'd define an action route like so:

return array(
    'cocktails/(?P&lt;widgetId&gt;\d+)' =&gt; array('action' =&gt; 'cocktails/editCocktail'),
);


That will send the request to your plugin's CocktailsController's actionEditCocktail.  There you can prep any data that you want and pass it off to a template to render:

$variables['name'] = 'Martini';
$variables['ingredients'] = array('Gin', 'Olives');

$this-&gt;renderTemplate('cocktails/_edit', $variables);


And access those from the template via {{ entry.name }} or:

{% for ingredient in entry.ingredients %}
    {{ ingredient }}
{% endfor %}



  Additionally this would allow me to use another template engine then twig.


I'm not seeing how you'd easily be able to do this, though.

Update:

There is also the Template Hooks, which might get you where you're going.