title: Define roles in a bundle config
body: <p>I have some questions about roles that I'm trying to understand a long time:</p>
  
  <p><strong>1.</strong> We have some bundles that we use in couple of projects. We would like to define roles in a bundle config, so that we do not copy roles into the role_hierarchy in <code>security.yml</code>. Is there any clean way to do it?</p>
  
  <p>My first idea was to import them into role_hierarchy like this:</p>
  
  <pre><code>role_hierarchy:
      ROLE_ADMIN:                             ROLE_USER, ROLE_TRANSLATOR
      ROLE_SUPER_ADMIN:                       ROLE_ADMIN
      ROLE_NOT_APPROVED_USER:                 ROLE_USER
      ROLE_TRANSLATOR:                        ROLE_USER
      "%base_bundle.role.hierarchy%"
  </code></pre>
  
  <p>This of course doesn't work. Is there any possibility to do it this way(merge arrays in yaml)?</p>
  
  <p>My other idea was to store roles in DB, but in my opinion it's overkill, because we have no dynamic roles. Everything is static.</p>
  
  <p>Is there any workaround to achieve what I try to do? Or is it a good idea to define it in a bundle?</p>
  
  <p><strong>2.</strong> I use roles as permissions (<code>ROLE_POST_EDIT</code>, <code>ROLE_POST_DELETE</code>, ...) and voters to deny or approve access to the resource. So at the end there are a tons of roles. Is it a good idea to mix roles with permissions? If not what is the best practise?</p>
  
  <p><strong>EDIT:</strong> I feel the difference between <code>ROLE_POST_EDIT</code> and <code>ROLE_USER</code> or <code>ROLE_ADMIN</code>. User has <code>ROLE_USER</code> because he is user. But user has "permission <code>ROLE_EDIT_POST</code>" to be able to edit a post. In my opinion there is a difference between. Anyway should I care about this difference or is there any other practise how to do?</p>