fix typo in multiplication, and extracted precision result calculation to function for other _generics() to be able to use them.

started generic mult-precision addition