Refactors Indexing and Notification into separate modules, adds eager loading