handle callback error

edit callbackSupported to make sure to only call a function when it is
supported
comments

edit a lot of comments ^