`brew` command now ran as user owning executable

This is a fix for https://github.com/opscode/chef/issues/1934.  Homebrew_owner now tries to run homebrew as the user who owns the `brew` executable, or an optional homebrew_package resource attribute.

If `brew` isn't at the default location (/usr/local/bin) we search for it with `which`.  If it cannot be found and the homebrew_package resource is missing, we raise an error.
Should this be `def find_homebrew_uid(provided_user = nil)`?