Fix bug in `brew list --pinned`

Pinned formulae which were pinned at a previous version but then upgraded
would not be listed by `brew list --pinned`. This is due to the good old
"File.exist? thinks broken symlinks don't exist" gotcha, so the test in
the select block in list_pinned has been changed to check if the pin file
exists _or_ is a symlink.

Closes #20423.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>