CLI is now class-based so it can be extended