code: public static <CRE,C2> Compose<CRE,C2> compose(Functor<CRE> f,Functor<C2> g){
          return new Compose<>(f,g);
      }
docs: Compose two functors
  
  @param f First functor to compose
  @param g Second functor to compose
  @return Composed functor