[dml-compiler] Allow modifiers to control the visibility of generated methods and classes

  * For now only slots and classes are affected
  * The default behaviour (if no modifier is specified) is public, if the "protected"
    modifier is specified, the generated method will be protected
[dml-compiler] New Feature: Support modifiers in relations, classes and slots

  * For now, only the "public" and "protected" modifiers are supported