title: Different ways to implement 'dirty'-flag functionality
body: <p>Almost every programmer did it once in his life: setting some flag if a variable's value changed. There's always lots of properties and you want to keep track if something changed </p>
  
  <ol>
  <li>in any property</li>
  <li>in a specific property</li>
  <li>or in some set of properties</li>
  </ol>
  
  <p><strong>I'm interested in different ways to implement the "dirty-flag" functionality for the above situations</strong>, besides the standard object wide dirty flag being updated on each property change. There must be something better than putting <em>"dirty = true"</em> in each setter: it just looks ugly and is a tedious work.</p>