Implement filter as an iterator
This solves issue #37 and allows to enable the correct version
of ___assertRaises. Also fixes subscript desugar to raise TypeError
when there is no __getitem__ method for the object, this bug also
was hidden by the ___assertRaises hack.