What are benefits of AlwaysOn FailoverClustering vs AlwaysOn Availability Groups?

Basic AlwaysOn Failover Clustering provides server level protection,  (Eg: 2 servers with 1 shared disk space;  if server fails, it can utilize another server on the shared disk space).

AlwaysOn Availability Groups provides diskstorage disaster level protection with high availability. It provides 2 servers with 2 shared space, correct 

(a) so what benefit functionally does AlwaysOn FailoverClustering have over Availability Groups?  Seems Availability Groups is better

(b) Can AlwaysOn Availability Groups utilize with  1 server, 2 shared storage space? (instead of 2 server, 2 shared storage?)

We utilize SQL 2016 Enterprise.
Thanks,