3.0 inflector

`hyphenate()` can be useful for e.g. in a custom inflected route which generates hyphenated instead of underscored words.
Not in particular, but as I mentioned in commit message `null` better represents `no value` than `false`.