added initial error reporting
add support for dispatch to implicit self