Move dispatcher and aggregate implementations to separate files.