@gshift_map(a:map, f:function)


(where f can be a map, a nim or an intentional function), builds a new map b such that

       b(f(x)) = a(x)