Breaking everything. Reworking everything to load in via json. This requires loading in the products initially and implmenting a three stage build. PreCreateObject, CreateObject and AfterCreateObject. This way everything will get loaded and then three methods will then be called.