I think the recommended way to do module functions these days is to use `module_function :some_method`

All of these are equivalent:

```
module X
  def x
    return "x"
  end
  module_function :x
end

module Y
  def self.y
    return "y"
  end
end

module Z
  extend self
  def z
    return "z"
  end
end
```

'extend self' may have additional meanings we did not intend. Thoughts on using `module_function` ?