matrix exponential function

concurrent and serial implementation
All these zeros can just be concrete declarations, e.g.:

    mpwr Dense

The zero state of a Dense is usable. You will need to take the address of the var for params if declared this way, but as a receiver the language will do this for you.