Editor / Directory entry / Add support for different types of subtemplat.es and more flexible configuration

This add the following option to configure the directoryEntry directive:
* Display or not the default add action
* Overrides the search (to restrict the search for contact for example or to search for other types of subtemplate)
* For contact, fixed the role code.


### Configuration examples:

* Contact field with a default add action (creating a new element) or autocompletion for contact with role selected from the codelist

```
<action type="add" name="metadataPointOfContact"
  addDirective="data-gn-directory-entry-selector" or="contact" in="/gmd:MD_Metadata">
  <directiveAttributes
          data-template-add-action="true"
          data-template-type="contact"
          data-variables="gmd:role/gmd:CI_RoleCode/@codeListValue~{role}"/>
</action>
```

![image](https://cloud.githubusercontent.com/assets/1701393/4790530/1d642750-5dd2-11e4-8670-ec99e3791a9e.png)



* Contact field with a default add action (creating a new element) or autocompletion for contact with predefined role (ie. author)

```
<action type="add" name="metadataPointOfContact"
  addDirective="data-gn-directory-entry-selector" or="contact" in="/gmd:MD_Metadata">
  <directiveAttributes
          data-template-add-action="true"
          data-template-type="contact"
          data-variables="gmd:role/gmd:CI_RoleCode/@codeListValue~author"/>
</action>

```
![image](https://cloud.githubusercontent.com/assets/1701393/4790528/15fe3ffa-5dd2-11e4-9896-3151250c414e.png)



* Contact field with only autocompletion for contact with predefined role (ie. author) 

```
<action type="add" name="metadataPointOfContact"
  addDirective="data-gn-directory-entry-selector" or="contact" in="/gmd:MD_Metadata">
  <directiveAttributes
          data-template-add-action="false"
          data-template-type="contact"
          data-variables="gmd:role/gmd:CI_RoleCode/@codeListValue~author"/>
</action>
```
![image](https://cloud.githubusercontent.com/assets/1701393/4790527/118b4724-5dd2-11e4-8d8e-9291ab7e0adf.png)



* Configuration to filter the list of subtemplate using a query (see filter attribute)

```
<action type="add" name="identifier" addDirective="data-gn-directory-entry-selector"
        or="pointOfContact"
        in="/gmd:MD_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification">
  <directiveAttributes
          data-template-add-action="false"
          data-template-type="contact"
          data-filter='{"_groupOwner": "133268"}'
          data-variables="gmd:role/gmd:CI_RoleCode/@codeListValue~author"/>
</action>
```

*  Configuration to add onLine source from subtemplate

```
<for name="gmd:onLine" addDirective="data-gn-directory-entry-selector">
  <directiveAttributes
          data-template-add-action="true"
          data-template-type="onLine"
          data-filter='{"_root": "gmd:CI_OnlineResource"}'/>
</for>

```