changes to how inventory updates are done, started moving base classes for widgets to C++, also updated base componenet to do not contain any info about inventory, instead move it to child componenet, which can implement any arbitrary inventory type, but you will need widget which can handle your type of inventory