made __getattr__ correct, it first checks if instance has the attribute before calling the user defined __getattr__