Removing redundant code in "getUsage" method

Code, that locates parent `@usage` annotation is removed in `getUsage` method in favor code in `getAnnotations` method, that recursively obtains all annotations including ones from parent classes.

Additional test was also added to check specifically inheritance of `@usage` annotation, since it's used to be handled a bit differently usually. Tests, that verifies annotation inheritance in general was already in place by the way.