add cart module and validation

this is fun ex, and i has study some new stuff.