title: Mobx computed doesn't work
body: <p>I'm using mobx 4.2.0
  When I try a use a computed property, I got some problem
  Code like this:</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>class ODOM {
    constructor(props) {
      console.log('how many times')
    }
    @observable speed = 0
    @action change(obj) {
      console.log(obj)
      Object.keys(obj).forEach(item =&gt; {
        this[item] = obj[item]
      })
    }
    @computed get velocity() {
      console.log('entry')
      return this.speed*60*60/1000
    }
  }
  const model = new ODOM()
  let total = 0
  setInterval(() =&gt; {
    model.change({
      speed: ++total
    })
  }, 3000)
  export default model</code></pre>
  </div>
  </div>
  </p>
  
  <p>the console 'entry' only run once
  What's the problem with those code</p>