Refactor flexible _call, raise a new exception if attribute doesn't exist