Added smarter logic to base the ChargeLine ID off of one more than the max ID in the list of chargelines.  Was causing an issue because it was basing it simply off the number of chargelines in the list.  Clearly leading to an issue with an established line with an id of say 2 and a size of list of 1.  Threw in a few log statements as well in the event a precondition is not met.