Added Gradient method and tests.

Gradient computes finite differences of vector-valued function using finite difference
Same comment as in single thread.