text: Title: Verify spearmanr works as expected in Rank2D
  Body: The [`scipy.stats.spearmanr`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.spearmanr.html) correlation was added to Rank2D without tests, and on reviewing the documentation for the correlation metric and in comparison to the numpy methods for covariance and Pearson correlation, we should check to ensure things are correct.
  
  The goal of Rank2D is to create a plot of pairwise comparisons between features, e.g. given a dataset `X` with 500 rows of instances and 3 columns, A, B, C, and D - we should produce a metric table for two pairs of columns as follows:
  
  ```
  AA  AB  AC  AD
  BA  BB  BC  BD
  CA  CB  CC  CD
  DA  DB  DC  DD
  ```
  
  The documentation for Spearmanr mentions that it takes parameters a,b (b is optional) each of which can be 1D or 2D. The behavior in the 2D case depends on the axis - if `axis=0` then each column is a variable, and observations in the rows, if `axis=None` then both arrays are raveled. In the default case, it appears that everything is correct, however we should ensure that `Rank2D` is not subject to library change by specifying exactly the axis we intend to compute the correlation. 
  
  To verify this, we should perform the following steps:
  
  - [x] update `'spearman': lambda X: spearmanr(X)[0]` to `'spearman': lambda X: spearmanr(X, axis=0)[0]` and any other specifications we need for correctness. 
  - [x] create `TestRank2D.test_pearson`, `TestRank2D.test_covariance`, `TestRank2D.test_spearman`
  
  The tests should:
  
  1. Create a dataset with known correlations
  2. Fit the visualizer with the dataset 
  3. Ensure that the `ranks_` size matches the number of features 
  4. Ensure that `ranks_` matches the expected correlations 
  5. Ensure that the image is drawn correctly. 
  
  See also #621  
  