In clustering you specify DNS name/IP address of cluster that is then used by all applications. In case of failover, the same DNS name/IP address will point to the appropriate database server.
In Always on Availability Groups, there is concept of Listener which to my understanding does the same as above, so do we really need a Listener when the Failover clustering already handles this concept (IP address) of failover?