adding linear solver base class
adding adjoint solver
working on solver implementation
adding comm indexer for overlapping communicator operations.
adding comm indexer test