prop1 is the underlying value, and clicking on the button calls Ember.set to update it. The cp is a computed property that relies on the dependent key prop1. If we remove the dependent key, cp will stop updating when prop1 changes.
Currently, the code "works". To see it break, open app/components/foo.js and comment out the @computed decorator.