Compare file times.
Loads into cache fine, but doesn't update from cache.

Also added a bunch of Eq instances
in order to make `updateModules` idempotent.