title: Component instance namespace/id that can be used in templates
body: <p>I understand how to use <strong>ElementRef</strong> and that one should avoid setting element ids, but there are still situations where you want to set an element's id attribute.</p>
  
  <p>For example, with inputs and labels (cannot nest because of 3rd party CSS):</p>
  
  <pre><code>&lt;input [attr.id]="'myinput'+instanceId" /&gt;
  &lt;label = [attr.for]="'myinput'+instanceId"&gt;My Label&lt;/label&gt;
  </code></pre>
  
  <p>I've just been incrementing a number like this for simplicity:</p>
  
  <pre><code>let numInstances = 0;
  
  @Component({
  
  })
  export class MyComponent {
  
    private instanceId: number;
  
    constructor(){
      this.instanceId = numInstances++;
    }
  }
  </code></pre>
  
  <p>But I was wondering if there is a Component Instance namespace I can use in templates instead. Something like this? Angular2 would replace # with unique string for component instance.</p>
  
  <pre><code>&lt;input [attr.id]="#myinput" /&gt;
  &lt;label = [attr.for]="#myinput"&gt;My Label&lt;/label&gt;
  </code></pre>
  
  <p>If this doesn't exist, do you think I should make a feature request to the Angular2 team?</p>