Address Issue #234; handle duplicate dependencies

In some instances brew installs packages that have dependencies already
listed as a 'resolved' dependency.  This patch checks the brew info for
each package and builds a list of dependencies-of-dependencies.  If any
of these dependencies-of-dependencies is already slated for
installation, it is removed from the list of resolved packages.

-Deal with empty match for regular expression

-Use Popen to maintain compatibility w/python 2.6

-import re

-Don't skip HomeBrew test if brew not installed

-Raise exception if brew is not installed

-Mock remove_duplicate_dependencies in HomeBrew test