Avoiding query limit by processing TimeSlots in chunks.

Since a single result set can only be 50000 records refactored
TimeSlotHelper.updateAllocatedCount to segment it's timeslots to avoid
this limitation.

Closes issue #52. Caveat: not yet tested with > 50K services.