add FMA and specialize type inference
extended vmap to ternary functors & fma tested