* add web_dashboard sample
* add docs
* address code review comments
* restructure web_dashboard
* set up provider and mock service
* add copyright headers, use relative imports
* add API class, add tests
* fmt
* rename services -> API, remove data library
* use new API in app
* add stream to items api
* convert from StreamBuilder to StreamProvider
* add subscription to Entry API
* rename API classes
* address comments
* Update README.md
* update README
* remove routing_demo
* Upgrade to pkg:provider 4.0
* Follow best practice of ProxyProvider updating
The addresses feedback from https://github.com/flutter/samples/issues/245. Instead of constructing a new `CartModel`, we merely update the `catalog` field.
We no longer need a fancy constructor, and `CartModel._catalog` cannot be final any more.