input is now an object; added functionality to define 'this' object; no initial guess is required.