Upgrade honors build_bottle? and built_as_bottle options

This adds support to `brew upgrade` for `ARGV.build_bottle?` (as indicated by `upgrade [install-options] [formulae]` in `man brew`) and for whether the previous build was `built_as_bottle`, as noted in `INSTALL_RECEIPT.json`.

Currently, [`brew reinstall` does honors these options](https://github.com/Homebrew/homebrew/blob/master/Library/Homebrew/cmd/reinstall.rb#L23-L24), but `brew upgrade` does not. This results in an upgraded install that is not built as bottle, even though the previous install was.
Actually `for_formula` is more robust these days: https://github.com/Homebrew/homebrew/blob/1aaa4f052d56e025467179fe4c109ce1196f7445/Library/Homebrew/tab.rb#L49-L63