private void makeUsages(ClassReader classReader) {
usageOptions = classReader.getCliOptions();
for (CliOption cliOption : usageOptions) {
Class<?> returnType = cliOption.getReturnType();
if(returnType.isInterface()) {
ClassReader usageReader = new ClassReader(returnType);
Collection<CliOption> usageOptions = usageReader.getCliOptions();
Usage usage = new Usage(cliOption.getName(), returnType, usageOptions);
usages.add(usage);
} else {
// If no interfaces defined, there is a single unnamed usage
Usage usage = new Usage(usageOptions);