title: Pass object in directive attribute -Serialised & isolated issue
body: <p>I would like to send a <em>simple object</em> from the controller to a <em>simple directive</em>...</p>
  
  <p>Here's a part of the object (<strong>Controller</strong>):</p>
  
  <pre><code>        var SQLWizard = function(){
              this.steps = {
                  query: {
                      title: _('Query'),
                      badge: '2',
                      value: null,
                      onValidation: function () {
                          console.log('query step over');
                      }
                  },
                  //other properties
              };
              this.currentStep = 1;
          };
          $scope.sqlWizard = new SQLWizard();
  </code></pre>
  
  <p>The <strong>html</strong>:</p>
  
  <pre><code>&lt;accordion close-others="oneAtATime"  accordion-wizard="{{sqlWizard}}"&gt;
  </code></pre>
  
  <blockquote>
    <p>accordion is an <a href="http://angular-ui.github.io/bootstrap/versioned-docs/0.13.3/" rel="nofollow">angular-ui</a> element from bootstrap</p>
  </blockquote>
  
  <p>(The simple) <strong>directive</strong>:</p>
  
  <pre><code>app.directive('accordionWizard',function (){
  return {
          restrict: 'A',
          link: function ($scope, element, attrs) {
               //some stuff here
              }
         }
      });
  </code></pre>
  
  <p>As you can see nothing special there, but I can't understand two things:</p>
  
  <ol>
  <li>When catching the object in the directive, I see my object has been serialised and the defined function (onValidation) disappeared!! Why?</li>
  <li>Why does I can't get all the $scope variable (defined in the controller) into my directive, since the directive doesn't use an isolated scope)?</li>
  </ol>
  
  <p>Thanks a lot ... </p>