Implements sorting students into tracks, finalizing tracks, and associated tests and logic

This may still be a little big, but over half the volume is tests associated with the code changes contained herein.