Fix grants to work with wildcard hosts

The current grant code fails when using a wildcard host (%), because
it's not properly quoted.  Fixed the quoting and wrote a spec for it.
The host is missing from the puppet title

The puppet title is used to define unique resources.  Since `host` is
missing from the title, two declarations with different hosts will be
seen to be the same, and will cause the following puppet error:
```
Error: Duplicate declaration: Exec[granting username access to database] is already declared in file /opt/boxen/repo/shared/mysql/manifests/user/grant.pp:33; cannot redeclare at /opt/boxen/repo/shared/mysql/manifests/user/grant.pp:33 on node ross-mbp.local
```

This commit adds the hostname to the title in both `user.pp` and
`grant.pp`, allowing multiple declarations to succeed.

Note: creating a user with differing host values is a common mysql
pattern, since a user needs separate grants for logging in from
`localhost` vs. any other host.
feat(): Update mysql to 5.6.20