class String

support camerize and underscore

def camelize

def camelize
  split('_').map(&:capitalize).join
end

def underscore

def underscore
  gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
    .gsub(/([a-z\d])([A-Z])/, '\1_\2')
    .gsub('::', '/')
    .tr('-', '_')
    .downcase
end