Switch table-driven reservations to use table-driven budget

Instead of counting how much budget has been consumed, determine
budget based on actual time slots.