don't cache downcased_uniq_named, let callers handling caching
all ARGV state should be reset when the array is replaced

when we replace the contents of ARGV in the forked build process, we
want everything reset (hopefully someday we won't have to care about
this)
no longer exec the build script
the forked build process should not run any at_exit handlers
remove handling of multiple installation attempts

handling dependency expansion prior to any installation will eliminate
this problem
fix dependency equality
pass deps and options into the installer
move bottle-arch warning to install command
remove CannotInstallFormulaError

we'll need a similar sanity check, but that should happen prior to
instantiating the installer
remove conflict checking from installer

this should happen prior to instantiating the installer
install tests now use the actual installer
move warning out of installer
split out source and bottle installers
skip these tests for now