xtensor bindings for BLAS and LAPACK

# Introduction

`xtensor-blas` is an extension to the xtensor library, offering bindings to BLAS and LAPACK libraries through cxxblas and cxxlapack from the FLENS project.

`xtensor-blas` currently provides non-broadcasting `dot`, `norm` (1- and 2-norm for vectors), `inverse`, `solve`, `eig`, `cross`, `det`, `slogdet`, `matrix_rank`, `inv`, `cholesky`, `qr`, `svd` in the `xt::linalg` namespace (check the corresponding `xlinalg.hpp` header for the function signatures). The functions, and signatures, are trying to be 1-to-1 equivalent to NumPy. Low-level functions to interface with BLAS or LAPACK with xtensor containers are also offered in the blas and lapack namespace.

`xtensor` and `xtensor-blas` require a modern C++ compiler supporting C++14. The following C++ compilers are supported:

- On Windows platforms, Visual C++ 2015 Update 2, or more recent

- On Unix platforms, gcc 4.9 or a recent version of Clang

# Licensing

We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

This software is licensed under the BSD-3-Clause license. See the LICENSE file for details.

INSTALLATION

- Installation
  - Using the conda-forge package
  - From source with cmake
- Performance and Linking

USAGE

- Usage
  - Using xblas and xlapack directly
- Reference
  - Matrix, vector and tensor products
  - Decompositions
  - Matrix eigenvalues
  - Norms and other numbers
  - Solving equations and inverting matrices
  - Other

DEVELOPER ZONE

- Build and configuration
  - Build
- Releasing xtensor-blas
  - Releasing a new version
  - Updating the conda-forge recipe