Support Fedora's rolling development "release", Rawhide

Since Rawhide is a rolling kind of release with no version numbers,
the operatingsystemrelease will actually return "Rawhide" instead
of any Integer. So we better check whether operatingsystemrelease
is an Integer before comparing numbers and cover Rawhide, too.
Add environment variable for .my.cnf and specs
Merge pull request #243 from hunner/fix_sql

Add environment variable for .my.cnf and specs
Added support to back up specified databases only with 'mysqlbackup'
parameter.  Each database is backed up separately to a named file.
Add HOME environment variable for .my.cnf to mysqladmin command when (re)setting root password
Changed backupdatabases default from false to []
Merge pull request #245 from embeepea/master

Add HOME environment variable for .my.cnf to mysqladmin command
Merge pull request #244 from willametteuniversity/master

Added support to back up specified databases only with 'mysqlbackup'
Add option to mysql::backup to set the backup script to perform a mysqldump on each database to its own file
Merge pull request #253 from treydock/mysqlbackup_file_per_database

Add option so mysql::backup to dump each database to its own file
Rename and refactor database to mysql_database.

Add collate as a new managable parameter, and extend self.instances to
add in all parameters when checking existing databases.  It also adds
self.prefetch in order to speed up Puppet runs.

Provider is also switched to using mk_resource_methods to generate
all the resource readers, and exists? and other methods now use the
property_hash where appropriate.

Tests rewritten to handle changes and extend code coverage.
Rename and refactor database_user to mysql_user.

This work adds max_connections_per_hour, max_queries_per_hour, and
max_updates_per_hour support to the provider and extends self.instances to add
in the new parameters when checking existing users.  It also adds
self.prefetch in order to speed up Puppet runs.

Provider is also switched to using mk_resource_methods to generate
all the resource readers, and exists? and other methods now use the
property_hash where appropriate.

Tests rewritten to handle changes and extend code coverage.
Use new provider names in manifests.

Modify manifests and tests to handle the renamed providers.
Rework tests for mysql_password to extend coverage.
Add simplecov support in order to generate test coverage.
Add rspec-system test for mysql_user.
Refactor and rename database_grant to mysql_grant.

This provider has undergone the largest set of changes and currently
just accepts a full SQL grant string as the name and then applies it,
making things easier for DBAs and removes the awkward attempts at
modelling grants into Puppet.
Merge pull request #248 from apenney/providers2

WIP: database_user and database refactoring
Refactor to use mysql::globals.

This initial round of work focuses on adding the concept of
mysql::globals to the module.  This is a shared place to provide all the
data the module needs, and then clients, servers, and providers can all
rely on this information to set things up.

This is being primarily used at first to allow a default_options hash
that contains all the previous parameters and takes a overrides_options
that allows you to then further customize any of the options in my.cnf.
Add mysql::globals and refactor mysql::server.

This work adds a new mysql::globals class which contains a hash used to
build my.cnf from.  It's used to share this data across multiple classes
so that the client and server can share this data.

End users can modify content in my.cnf by including mysql::globals and
passing in override_options as a hash that looks like:

override_options = { 'mysqld' => { 'max_connections' => '120' } }

This completely replaces the mess of parameters that existed in the main
mysql class before.

Completely refactor mysql::server and rework the API.  This changes
ordering, changes from execs{} to mysql_user for the root password,
removes some functionality (like the etc_root_password), and generally
makes some tough decisions about how mysql::server should be built.