Move enabling as a login shell outside of the if node['fish']['set_as_default'] section. Have the gaurd check for the entire path of fish, instead of simply fish

The rationale behind the first change is that it makes sense to add fish to the list of shells, even if it isn't currently being set as a default shell for any user.
The logic behind using the full fish path in the guard is that the package manager version of fish installs to a different path then the source version. The problem
with this is when attempting to add the source version to the shell list, it won't do it because the package version is already there.