Refactored widget sections into discrete classes