adjust render_template API

previously render_template(name, **kwargs) would result in conflicts
with template variables named 'name' and the first param name.

This method's dictionary has changed to render_template(name, params)
where params is a dict that's passed to the underlying jinja2 render
method.
add MySQL.show_engines() method

This is to support reliably detecting available storage engines.
As of MySQL 5.6 the have_<engine> variables are no longer available
and the documentations points to using SHOW ENGINES instead.
add engines variable to the options when rendering a my.cnf template
check for engines.InnoDB rather than the have_innodb variable

Specifically this patch uses the 'is_enabled' attribute exposed by
MySQL.show_engines -> EngineInfo, which is a boolean that is true
if an engine is enabled and false otherwise.
use holland.mysql.util:render_template to generate a my.cnf file

previously render_template code was effectively duplicated in
holland.mysql.server.
add holland/mysql/templates/create_view

This template is used to generate the view definition for an invalid
view via MySQL.show_create_view.  This support was add previously
but the commit of the underlying template was missed.  This adds
the template.