For every ILC Sessions, enrollments should go through two states and each state should be programmed to be treated differently. There should be one state for when a user is pending approval from their supervisor to be fully enrolled in the ILC Session. When an ILC session enrollment is pending approval it should not be counted towards the max capacity that is established for a particular ILC Session. Once a supervisor approves the user's pending approval enrollment, it should then, be transformed into a different state where the user is fully enrolled and it is counted towards the max capacity.