Change setCallback to rely on explicit type-checks rather than type-hinting - will allow named functions to be passed in as well.