title: mdl-textfield not taking ngModel changes into account
body: <p>I am facing an issue regarding the <code>mdl-textfield</code>'s behavior</p>
  
  <p>On the below plnkr, follow the steps:</p>
  
  <ol>
  <li>click on "groups working"</li>
  <li>click on "copy" on one item</li>
  <li>look at the very end new textfield appeared with the ngModel associated (angular.copy) but the behavior of the textfield is strange, even if there is a value, the label is not floating but if you click in the textfield, it floats as expected. If you modify the field the behavior remains, but if you quit it without any modification label comes back with overlay.</li>
  </ol>
  
  <p><a href="http://plnkr.co/edit/MUI2iBslIH9jd4fgEQPL?p=preview" rel="nofollow noreferrer">http://plnkr.co/edit/MUI2iBslIH9jd4fgEQPL?p=preview</a></p>
  
  <p><code>ngView</code> content</p>
  
  <pre><code>&lt;div data-ng-controller="MainCtrl"&gt;
    &lt;section data-ng-repeat="fo in foo"&gt;
      &lt;div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label"&gt;
        &lt;input class="mdl-textfield__input" type="text" id="sample1" data-ng-model="fo.bar"/&gt;
        &lt;label class="mdl-textfield__label" for="sample1"&gt;{{fo.bar}}&lt;/label&gt;
        &lt;span ng-if="$last" ng-init="update()"&gt;&lt;/span&gt;
      &lt;/div&gt;
      &lt;button ng-click="focopy(fo)"&gt;Copy&lt;/button&gt;
    &lt;/section&gt;
      &lt;div data-ng-show="datacopy.edit" class="input-field"&gt;
        &lt;input type="text" id="ex1" data-ng-model="datacopy.bar" /&gt;
        &lt;label for="ex1"&gt;label&lt;/label&gt;
      &lt;/div&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>Angular module</p>
  
  <pre><code>var app=angular.module('plunker', ['ngRoute'])
  app.config(function($routeProvider){
      $routeProvider
      //Root URL
      .when('/',{template:'&lt;p&gt;Coucou&lt;/p&gt;'})
      .when('/groups',{templateUrl:'groups.html'})
      .when('/groupsnotworking',{templateUrl:'groupsnotworking.html'})
  });
  
  app.controller('MainCtrl', function($scope,$timeout) {
  $scope.foo = [
    {bar: 'world'},{bar:'toto'},{bar:'toto'}
  ];
  $scope.groups=$timeout(function(){
    $scope.groups=$scope.foo
  },1000);
  $scope.update=function(){
    componentHandler.upgradeAllRegistered();
  };
  $scope.datacopy={};
  $scope.focopy=function(data){
    $scope.datacopy=angular.copy(data);
    $scope.datacopy.edit=true;
  };
  });
  </code></pre>
  
  <p>Hope it is clear enough.
  I tried to post that on the github of material design lite thinking it was a bug, but I have been kicked off here...
  Thank you</p>