Reorganised the code to handle tooltip display/updating, added some of the interface calls to setup tooltip data for items and shit. It's not ideal, but it's a workable solution in the short term, that we can expand later pretty easily, if and when the requirement comes up.