TypecheckPush application.

I wonder why Pierce does this:

f pull A -> B     x push A
--------------------------
        f x push B

instead of this:

x pull A     f push A -> B
--------------------------
        f x push B

Anyway, I implemented Pierce's.