Expanded the math node (made is consistent with the Cycles math node)

Just added a bunch of extra options to the math node. I think most of these can be very useful. These changes also make it more consistent with the Cycles math node (also I renamed `type` to `operation`).
For operations that only need 1 value, the `B` socket is hidden.

I hope you also find this useful.