Observable basket

This is a singleton module acting as a view model for the shopping basket. It contains relevant functions to modify the contents and manage "à la carte" and "crazy" modes.