fixed bug in addition

when adding two numbers of different size each less than 1e7, the subtraction shifting came into play inappropriately. Now that case is handled separately.