Add support for an advanced task scheduler managed by the application.

Yup, 'Function' allows any functions without parameter or return type restrictions, whereas 'function' is used if you want to further restrict. In this case, the callback tasks can truly be anything, so I apply no restrictions.