Fix handling of shell globbing

Apparently `File.fnmatch` doesn't have the same behavior as shell
globbing when using the `**` pattern. This results in strange behavior
like `**/*.rb` only matching Ruby files nested under at least one
directory.

Fix this by using `Dir[glob].include?(file)` instead of
`File.fnmatch(glob, file)`, to match the behavior of shell globbing.

This also allows us to remove a hack in `Hook::Base` which handles this
case for files in the root directory.

Change-Id: I3fd26420e236d1c5e18506752fedf9f533d14d42
Reviewed-on: http://gerrit.causes.com/37981
Tested-by: jenkins <jenkins@causes.com>
Reviewed-by: Shane da Silva <shane@causes.com>