fix eval

eval should now return values correctly. If no nargout was given, `eval`
did not catch the global `ans` correctly. Now it does.
fix __getattr__ for variables

__getattr__ now correctly returns variables from the global scope.
added tests