support for custom delimiters
replaced magic numbers with named constants
extracted methods to make string addition algorithm clearer
throw exception if there is a negative number + code reformatting
negative number exception includes the number
negative number exception includes all the negative numbers