feat(basketService): improve stock management

With this change the basketService will
automatically adjust the `product.qty` or
`variant.stock` whenever items are added
or removed from the basket. Except when
the basket is cleared entirely.

It also adds a new API: `canBeIncreasedBy`
which makes the UI programming more convenient
as one can easily bind a plus button to that.

This change still leaves plenty of issues uncovered
but we found such cases to be barely fixable in
the short term and think this changes the current
situation to the better.
chore(release): cutting the 0.2.0 release