Two new features:
* `setup_callbacks` now takes an optional `layout` parameter, which will allow you to setup the callbacks for multipage apps
* you can now use `data_provider` with no inputs - this allows you to compute some data lazily (i.e. this `data_provider` will be executed only if the component is shown to the user)