Add matrix-vector multiplication for host backends
Add Mat * Dat unit test
Also allow multiplying Mat by PETSc Vec
Add Mat * Vec unit test