add cart enhancements and checkout