Adding tests to verify that @usage annotation restrictions work

1. adding tests to verify, that if annotation can't be applied to class/method/property, then approptiate exception is thrown
2. adding descriptive comment around that check to avoid confusion while reading `$usage->$member` code