- expr must conform to the Utility Syntax Guidelines, so use
getopt() to eat the (non-existent) options.
- Use the Standard type intmax_t for arithmetic.
- If an argument cannot be *completely* converted to an integer, then
it is a string.
Additionally make some style cleanups near the modified lines. This
utility is still not completely style-compliant.
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.
Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.