Implemented "Save Inventory"; added loose-coupling (some things are broken now)