While it is already possible to output mask shapes from AA functions,
which the driver _will_ accept, it's not convenient to do so. Improve
the practicalities of it in several ways:
* Add `mask` and `polygon` helpers to the interface module.
* Add a helper function to encode masks into the format CVAT expects.
* Add a built-in torchvision-based instance segmentation function.
* Add an equivalent of the `conv_mask_to_poly` parameter for Nuclio
functions.
Add another extra for the `masks` module, because NumPy is a fairly
beefy dependency that most SDK users probably will not need (and
conversely, I don't think we can implement `encode_mask` efficiently
without using NumPy).