libcommhistory offset vs limit

libcommhistory is a jumbled mess. because of the way it calculates offset/limit, it appears that tying offset to rowcount is actually more dangerous than tying offset to limit.

also, checking (count==1000) will always fail when the user has a multiple of 1000 calls.