CHEF-4135: Better error message with invalid resource lookup syntax

I noticed that when I used code like:

```ruby
  notifies :run, "typo[missing-close-bracket"
```
the error did not trigger any error inspector and the error message was lacking in helpful context. This is because chef did not detect the mistake until the reference resolution step in between compile and converge. This patch fixes that by validating arguments to notifies eagerly.

Other failures in notification references (incorrect resource name or type) will also fail without triggering an error inspector, but these generate nicer exception messages so it's a less urgent problem.