SchoolYear refactored

resolves #547