Orded.contains adopted to use gruntz(), not limit()

This does limit calculations in this method more fragle, which is good.  An example:
```
>>> O(sin(1/x**2).contains(O(cos(1/x**2)))
True
```
is wrong, just because of this limit (see [issue 1769](http://code.google.com/p/sympy/issues/detail?id=1769)):
```
>>> limit(sin(1/x**2)/cos(1/x**2), x, 0)
sin(oo)/cos(oo)
```

PS: This problem appears in this pr #2905.