Version3

Fixes #20 
Fixes #15 
`this` only use `self` for child scopes