Make fmap & fmapWith more sensible
Tweak fmap and fmapWith