I've been puttering around in my resource code. It's quite nice to come back to after a break, as it's much easier to see dubious design decisions. My resource manager works around a very shallow inheritence tree, basically there are few types of bank, that manage the resources loaded into the game. All the banks are generic so they can hold any type of resource.
The situation arises where you might ask the bank for a resource and it doesn't have it . For some reason only one of the banks deals with this situation in a decent manner. It calls an event, where the user of the bank would write a call handling the event and probably loading the missing resource from disk. There's no reason why all the banks shouldn't have this event so I'm in the process of moving it now and fixing things according to the unit tests.
I'm trying to make my more mature code more solid, documented and polished.