Change sql param to default to undef instead of empty string

The future parser treats the empty string '' as a truthy value. This
means that mysql::db will always try to include the db import exec in
the catalog. With the empty string as the $sql value, the command
attempts to import '' into a database, which fails. This patch changes
the default $sql value to undef so that the exec won't be included if
there is no sql to import.
Merge pull request #577 from cmurphy/fix_future_errors

Change sql param to default to undef instead of empty string