Using `uses` instead of `extends` for interfaces