split views into multiple files
added shopping cart functionality and tests