EXTRA CREDIT: Doing the "minimum" extra credit will get you 15% extra on this assignment, doing both portions of extra credit will get you an additional 30%

m_strtol:
Function: Converts a (in a known base) into an integer.
NOTE: This function MUST call toupper and isspace.
NOTE: The underlined parts of the definiton are OPTIONAL, but they will get you an extra 15% on this assignment.
argument 0: pointer to the string to convert
argument 1: pointer to a character pointer
argument 2: a base
return value: a long integer representing the value of the entered number
Hint: Remember the powers of 2 trick and the powers of 16 trick. This is just a program that will do these tricks for any base from 2-36.

From the C man page:
int strtol(char *nptr, char **endptr, int base);
The strtol() function converts the string in nptr to a long integer value according to the given base, 
which must be  between 2 and 36 inclusive, or be the special value 0.
The string must begin with an arbitrary amount of white space (as determined by isspace(3)) followed by a single optional `+' or `-' sign.
If base is zero or 16, the string may then include a `0x' prefix, and the number will be read in base 16; otherwise, a zero base is taken as 10 (decimal)
unless the next character is `0', in which case  it is taken as 8 (octal)
The remainder of the string is converted to a long int value in the obvious manner, stopping at the first character which is not a valid digit in
the given base.(In bases above 10, the  letter `A' in either upper or lower case represents 10, `B' represents 11, and so forth, with `Z' representing 35.)
If endptr is not NULL, strtol() stores the address of the first invalid character in *endptr. If there were no digits at all, 
strtol() stores the original value of nptr  in *endptr. (Thus, if *nptr is not `\0' but **endptr is `\0' on return, the entire string is valid.)
RETURN VALUE
The strtol() function returns the result of the conversion, unless the value would underflow or overflow.
If an underflow occurs, strtol() returns LONG_MIN. If an  overflow  occurs, strtol() returns LONG_MAX. In both cases, errno is set to ERANGE.
m_atoi:
Function: Converts ASCII characters into an integer.
NOTE: This function MUST call strtol.
argument 0: a pointer to the character array to convert into an integer.
return value: an integer representing the value of the entered number.
Hint: Just call strtol as shown below.

From the C man page:
int atoi(char *nptr);
The atoi() function converts the initial portion of the string pointed to by nptr to int.
The behaviour is the same as:
  strtol(nptr, NULL, 10); 
except that atoi() does not detect errors.
RETURN VALUE
The converted value.