Projects::BranchRule validations and enum config
<!--IssueSummary start--> <details> <summary> Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards. </summary> - [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=535667) </details> <!--IssueSummary end--> Convert the `Projects::BranchRule` class to an `ActiveRecord` class. Add enum config for `rule_type` Add validations for `name` (probably matching the ones for `ProtectedBranch`) Associations for `project` and `group` We need to update the `find` override. It should toggle between current behavior and AR behavior (`super`) when the feature flag is toggled.
issue