restructure code in the ActiveModel::Validations
- the `validates_with` class method contains in the `validations/with.rb` is closely coupled with the `validates` and 'validates_with` defined in `validations.rb`
- In `validations.rb`, `validate` is the "base method", 'validates_with' is based on that, and 'validate_each' is based on 'validates_with'. Correct the order for these three methods for better readability.
- The `HelperMethods` deserves its own file instead of mixing it with the `with.rb` as it is accessed by all the individual validators.

Now `with.rb` serves the same role as `length.rb`, `format.rb` as a kind of `EachValidator`