Made lisp_fns + property a wrapper object containing original addition function and metadata properties. Adjusted evaluate_term to deal with wrapped and unwrapped functions.
Added wrapper function to start dealing with error-handling aspect of program.
Altered initialisation to wrap regardless but for function point to be checked within wrap's closure.
Added domain- or metadata to the + function.
Removed now unnecessary type check from evaluate_term function.
Removed extraneous console logs.
Removed function type check from evaluate_term as all lisp_fns objects should be wrapped in function anyway.
Altered evaluate_term so that it expects an array containing one term, to bring it in line with lisp_fns objects.
Localised lisp_function properties/parameters to wrap_function closure and where they weren't any set defaults.
Set up wrap_function to return objects with value or error messages, prepared print_result to receive such objects and wrapped evaluate_term function.
Corrected arity expectation for the + lisp_fn.
Changed print_result to look more like Lisp error message.
Added information about parameters for the - lisp_fn.
Modified wrap_function so that name of function can be passed along with error message.
Added data about parameters for * and / lisp_fns.
Added eval as function name when wrapping evaluate_term.
Merged branch 'feature-error-handling' into 'develop'

Conflicts:
	lisp_interpreter.js
Corrected return from evaluate_term function.
Corrected the print_result statement deals with boolean values.
Adjusted interpreter so that defvar lisp_fn could operate with error-handling.