Refactoring: Turn section dictionaries into real classes

Handling if the core file sections has been a bit ad-hoc with bits
and pieces implemented everywhere. Sections are now turned into
real classes inherited from the base class Section, and can take
advantage of multiple inheritance to keep the final classes small