Remove Armadillo dependency
This MR removes the Armadillo dependency from Bandicoot, but preserves interoperability via forward declarations of arma::Mat
, arma::Col
, arma::Row
, arma::conv_to
, and arma::Base
(see arma_forward.hpp
). These are all that is necessary to provide conversion constructors for Bandicoot types and conv_to
support to/from Armadillo objects.
There was one use of Armadillo for the RNGs that I replaced with a bare vector that does the same thing.
Through the forward declarations, it doesn't matter whether Armadillo or Bandicoot is included first. To make sure that both variants work, at least one of the tests includes Bandicoot first.