Renamed exceptions to make classes more clear. Lots of little work on Cart class. Attempt to fully mock Session\Store for testing.