Add two more implementations of monomial_mul()

The new implementation gets faster from:
```
ondrej@kittiwake:~/repos/csympy/benchmarks(master)$ ./expand2b 
poly_mul start
poly_mul stop
98ms
number of terms: 6272
```
to:
```
ondrej@kittiwake:~/repos/csympy/benchmarks(mul)$ ./expand2b
poly_mul start
poly_mul stop
93ms
number of terms: 6272
```
and it is also simpler.