Implements a very simple number tower to convert two numbers to their arithmetic compatible type.
This is only supported on limited types needed by the expression system.