CLN: Fix CRLFs in repo + add .gitattributes

View this pull request with [`?w=t`](https://github.com/pydata/pandas/pull/3915?w=t) added to the end of the url to see that there are not differences [aside from the .gitattributes files] - this should prevent more commits with CRLF entering the repo.

I think it'd be good to merge this (especially because we can avoid this happening in the future.), though (I think) it'll mess up the history for 10 minutes to pandas and `pandas/core/expressions.py`.

After this, will never need to deal with CRLF again! Yay!