GradeRate to be a Record rather than Accountable
Unnecessary codes
Refactor: inheritance to save a few words
Custom implementation of Team and Department
TeamRate to keep track of Team at different period
AppKernel order of bundle loading
IcRate to keep track of Team and Department InCharge at different timeframe
Add MasterTeam and MasterDepartment to group team/department for easier administration of commission related structure
Some core business rule - commit early commit often