Mark proposals as applied on commit

This is another attempt for a fix of
https://bugzilla.novell.com/show_bug.cgi?id=861309

The previous solution was based on comparing the crowbar-revision of
proposal and the corresponding role. However, these numbers can diverge
arbitrarily and the comparison would not work as expected, as was observed in
https://bugzilla.novell.com/show_bug.cgi?id=877486

This patch uses a dedicated 'committed' attribute, which defaults to
false. It is set to 'true' after a proposal is successfully committed and re-set back
to 'false' on any other operation.

If the PR and the attribute name is OK, I'll go through the barclamps and create PR's introducing such attribute to their schemas (the patches are already prepared).
I think what @aspiers means is that the check you're using is wrong. It's not because we get a 200 here that `apply_role` successfully completed with chef-client having been run on all nodes. For instance, if the proposal is put in the queue instead, you will still get a 200. So I think this attribute should be set at the end of `apply_role` if possible.