[vector-api] Refactor DragZoom

To use a DragBox interaction, which emits `boxstart`/`boxend` events, allowing to be re-used in another ways.

It also removes `DragZoom` from default interaction, as it’s only supported by the canvas renderer. Add an example to demonstrate it.