fixed handling of missing dependencies, now throws exceptions instead of killing the script