Changing the api for gui components to a static-factory-all-in-a-singleton style thingy