added the 'lazy' method, for creating 'lazy' functions.

A lazy function, is the same as a regular one when bound
to parameters.

However when called, any function supplied will be executed,
before the inner 'bound' function gets called.

This allows you to pass a function, which will return a value,
when that function is called.