ENH: cluster: rewrite and optimized `vq` in Cython

Rewrite the underlying part of cluster.vq in Cython.
Besides, an optimized algorithm is implemented and it will improve the
performance for datasets with large nfeat when built with an optimized
BLAS library.
BLD: Bento build scripts for new cluster._vq
MAINT: cluster: rewrite vq with fused types and BLAS Fortran ABI
MAINT: cluster: avoid copying when dtype is the same in vq
Merge pull request #3683 from richardtsai/vq_rewrite

ENH: cluster: rewrite and optimize `vq` in Cython
Update continuous.rst

fixes #3587
Merge pull request #3695 from andreas-h/patch-3

DOC: update continuous.rst so distributions are in alphabetic order.
ENH: check for valid 'orientation' kwarg in dendrogram()

fixes #3668
Merge pull request #3696 from andreas-h/gh3668

ENH: check for valid 'orientation' kwarg in dendrogram()
BUG: cluster: _vq should check the dtype before using it
BUG: cluster: _vq unable to handle large features

_vq.vq should initialize outdists to INF but ndarray.fill seems
to treat NPY_INFINITY as an int32 and initialize outdists
as 2 ^ 31 - 1, so that the result may be wrong when the features
are large. Use np.inf to fill outdists would be safer.
MAINT: cluster: use 'ndim' instead of 'rank' in _vq
Merge pull request #3702 from richardtsai/vq_large_features

BUG: cluster: _vq unable to handle large features
BLD: special: link _ufuncs against LAPACK