Resize images through pluggable supervised command backends.
@type backend() :: module()
@spec backends() :: [backend()]
@spec needs_resize?( map(), keyword() ) :: boolean()
@spec resize( map(), keyword() ) :: {:ok, map()} | {:error, term()}
@spec resize!( map(), keyword() ) :: map()