Move limit() body to Limit.doit() method

Now limit(*args) is a synonim for
Limit(*args).doit(deep=False), like summation() vs Sum.
For limits at oo/-oo the dir argument doesn't matter:

in this case it's determined from the direction of the infinity.
pretty/latex printing support for directional limits

fixes #8175
Merge pull request #8201 from skirpichev/limit-dir-printing

Printing support for directional limits