I am struggling to figure out how concatMap relates to the =<< operator. Could someone please explain why: 
f x = concatMap g $ take 5 $ x
becomes
f = (g =<<) . take 5
in point free.  I can see that the types of concatMap and =<< match but I don't understand why.
 
    