simple refactoring & started cart adding. WIP