Fix postgresql adapter #columns_for_distinct trimming whitespace it shouldn't

Fixes the regression described in https://github.com/rails/rails/issues/16623 present in 4.0.10rc1 & 4.1.6.rc1. It was introduced by 3d5a2019bcccc6fb01bee4811ca669f4383edb51.
Why make `(?:FIRST|LAST)` optional?

Also, I don't like the fact that we don't require whitespace before `NULLS`. Can we just remove the trailing `\s*` from both expressions instead?

And let's end both with a `\b`, for similar reasons: we're looking for whole words here.