@Target(value=TYPE)
@Retention(value=RUNTIME)
public @interface Requirements
Marks a plugin class as requiring other plugins. This used so that the requirements exist on the class-level,
allowing plugins to reference classes or types not present on the Shuffleboard classpath at load time.
Rather than using this annotation directly, the @Requires annotation can be used multiple
times on a single class, reducing clutter.