Fixes manage_service feature

Module lacks of disabling service managing (ensure=>undef).
This patch is fixing this issue.
(MODULES-1287) Pass the backup credentials to 'SHOW DATABASES'

Pass the backup username and password to mysql when running SHOW DATABASES in
mysqlbackup.sh if `file_per_database` is true and `backupdatabases` is empty.
Update spec_helper for more consistency
Merge pull request #561 from mhaskel/spec_updates

Update spec_helper for more consistency
Merge pull request #559 from nhinds/file_per_database_username_and_password

(MODULES-1287) Pass the backup credentials to 'SHOW DATABASES'
Merge pull request #558 from paramite/manage_service

Fixes manage_service feature
future parser converts explicit undef to empty string

With the future parser and puppet 4, explicit undef seems to be converted to blank string for erb templates
This change allows you to continue to omit config options in the main my.cnf
mysql_database: prevent syntax error with collate=>'binary'

On MySQL v5.5.38, creating a database such as:

	CREATE DATABASE `mydb` CHARACTER SET binary COLLATE binary;

seems to hit a parser bug. A workaround is simply to quote COLLATE
`binary`. As the quoting is harmless, and for aesthetics, quote both
the CHARACTER SET and COLLATE arguments.
Merge pull request #565 from mmonaco/master

mysql_database: prevent syntax error with collate=>'binary'
(MODULES-1330) Change order of revokation
Merge pull request #569 from fnerdwq/mysql_grant_revokation

(MODULES-1330) Change order of revokation.
Merge pull request #568 from edestecd/master

future parser converts explicit undef to empty string
Add explicit dependencies for types

mysql_grant has an autorequire()'d dependency on the .my.cnf file used
by the provider to talk to the database.

I've added this to mysql_database and mysql_user too since logically
these also need the file to be in place.

I've hit this bug because of a slightly unusual edge case in our own
manifests, but I think this fix belongs upstream regardless.
Trailing commas were breaking things on 1.8.7
Merge pull request #573 from mhaskel/fix_187_unittests

Trailing commas were breaking things on 1.8.7
Add timeout parameter to increase for long time running sql imports

Signed-off-by: refnode <refnode@gmail.com>
Add documentation for new mysql::db "import_timeout" parameter

Signed-off-by: refnode <refnode@gmail.com>
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
(MODULES-552) Add capability to specify column_privileges