make sure that visit only reconstructs functions that return an
AbstractDataType of the right type.
made visitor robust against out-of-scope data declarators.
Merge branch 'master' of git@github.com:cwi-swat/rascal.git