refactored tests, moved ast declaration out of methods
ported lens from haskell to python
lens fixes
tests
activated tests