Symbol table related improvements

- Python 2.6 compatibility
- fix symbol tables for reverse() and invert()
- fix symbol table equality
- add symbol table methods find(str) and __contains__
- concatenation and union now merge symbol tables when compatible
- new test for symbol tables