mslib: use a stack buffer for temporary storage in uitoa
Apparently this implementation requires that "string" be at least
NUMBER_OF_DIGITS in length because it starts writing at
string[NUMBER_OF_DIGITS] and works backwards.
Since not all callers are passing a buffer that big, use a temporary
buffer for writing out digits before writing them left-to-right into
string.