Initial commit of function base class and general repo structure
Preliminary working version of gradient descent implementation