Add parameterization changes from wikipedia.
Add priv validation to database_grant provider

The mysql database_grant provider currently has what is arguably a heinous
design flaw. At present:

 1. The 'privileges' parameter for the database_grant type, mysql provider,
    does not expect the same syntax as the mysql Grant command ('SELECT',
    'UPDATE', 'DELETE', etc). Rather, it expects the user to supply column
    names used to store raw grants in the mysql.db or mysql.user tables
    internally ('Select_priv', 'Update_priv', 'Delete_priv', etc).

 2. If a user supplies `privileges => [ 'SELECT', 'INSERT' ]` instead of
    `privileges => [ 'Select_priv', 'Insert_priv' ]`, the provider fails
    silently and will continuously attempt to update the privileges with
    each successive puppet run. In the specific example provided, all privs
    for the user/db will be set to false since e.g. 'INSERT' does not match
    any valid privilege.

Unfortunately it doesn't look simple to modify the provider such that the
intuitive SELECT, DELETE, etc. keywords can be used without changing
existing behavior. Leaving that alone for now, it *is* pretty simple to add
a validation function that will at least fail cleanly if non-functional
privilege values are supplied that don't mean anything to the provider. If
the user is trying to use valid MySQL Grant syntax, the new validation
procedure will recognize this and suggest a correction. Hopefully giving
users this kind of warning will clue them in to what kind of input the
provider expects.
Escape $root_password during execs.

Some characters used in a password can cause the shell in an exec to do
unexpected things unless the password is enclosed in single quotes.
Updated the rspec tests to deal with the password quoting.
Merge pull request #73 from razorsedge/mysqladmin_passwd

Escape $root_password during execs.
Add apparmor support.
Add support for debian defaults file.

Debian defines a defaults file in /etc/mysql/debian.cnf that can be used
for system admin tasks. Use it if it's there.
Adjust location of apparmor module.
New configuration define.

* added a define to easily create .cnf files in /etc/mysql/conf.d/
* fix wrong path for .my.cnf in /etc/
Add support for Amazon Linux.
Merge pull request #94 from hunner/amazon-linux

Add support for Amazon Linux.
Add a missing curly brace
Merge pull request #95 from branan/missing_curly_brace

Add a missing curly brace
Put that curly brace in the right place this time
Merge pull request #96 from branan/missing_curly_brace

Put that curly brace in the right place this time
Merge pull request #90 from emonty/master

Add a bunch of new parameters
Revert "Merge pull request #90 from emonty/master"

This reverts commit 063d72493c776db2e036c1f1fada0702ac8636f5, reversing
changes made to 9c10b3a6c3f99dcdc44272325ba2056ed4877d51.
Merge pull request #97 from bodepd/revert

Revert "Merge pull request #90 from emonty/master"
Clarify how to grant specific privileges with database_grant

When I tried to use database_grant, I assumed the privilege 
names would match the SQL GRANT command, for example, SELECT
or CREATE TEMPORARY TABLES.  But in fact the privilege names
are taken from columns of the mysql.db table.  As a result,
a row was created in mysqld.db, but none of the privileges 
I intended to grant were actually granted.

Someone else filed a ticket with the same issue:
http://projects.puppetlabs.com/issues/15808

Document that how to specify individual privileges in
README.md.
Merge pull request #100 from mcary/patch-1

Clarify how to grant specific privileges with database_grant
Added an option to specify db status.