`std.experimental.ndslice` has been removed

The synchronization between Phobos and Mir turned out to be a high amount of work with little gain.
Users of `std.experimental.ndslice` are advised to switch to the upstream
$(LINK2 https://github.com/libmir/mir-algorithm, mir-algorithm package).

It comes with a lot of new features
$(UL
 $(LI $(LINK2 http://docs.algorithm.dlang.io/latest/mir_ndslice_topology.html, `mir.ndslice.topology`)
 	- Multidimensional `std.range` analog. Includes `bitwise`, `bitpack`, `zip`, `unzip`, `map`, `indexed` and many other features.)
 $(LI $(LINK2 http://docs.algorithm.dlang.io/latest/mir_ndslice_concatenation.html, `mir.ndslice.concatenation`)
 	- Concatenation and padding)
 $(LI $(LINK2 http://docs.algorithm.dlang.io/latest/mir_ndslice_algorithm.html, `mir.ndslice.algorithm`)
 	- Slim multidimensional `std.algorithm` analog)
 $(LI $(LINK2 http://docs.algorithm.dlang.io/latest/mir_ndslice_sorting.html, `mir.ndslice.sorting`)
 	- Multidimensional sorting utilities)
)

`ndslice` design was changed. New ndslices can be created on top of random access iterators including pointers. There are three kinds of ndslice:

$(UL
 $(LI `Contiguous` - Contiguous in memory representation. It does not store strides and can be always flattened to 1 dimensional ndslice on top of the same iterator type. )
 $(LI `Canonical` - BLAS like. Stride for row dimension assumed to be equal to 1.)
 $(LI `Universal` - Numpy like. Each dimension has strides. All dimensions can be exchanged without reallocation. The old ndslice ABI corresponds to to the `Universal` ndslice.)
)
