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 committed and re-set back
to 'false' on any other operation.
Set chef reconnect rate to 3

I have put the chef retry connection rate down to 3 retries in order to
prevent extreme long page loadings in case of the chef server is gone. I
think it should be enough to retry to connect only 3 times.
Selecting raw mode w/o loosing data (bnc#882976)

The ticket https://bugzilla.novell.com/show_bug.cgi?id=882976 explains
that we loose data if we switch from the custom proposal form into raw
proposal form.

To prevent loosing data i have integrated a confirmation dialog that
have to be accepted before we can switch to another page if we have
changed something on the current proposal form.

This solution is a shortterm solution until we get a better javascript
library with dynamic data binding to switch between raw and custom view
without a page reload and without loosing data.
Set the applied flag in proposal_commit

Instead of setting it in the controller, check for the return value of
apply_role in the proposal_commit ensure block, and mark the proposal as
applied accordingly.
Fix UI if chef-server is gone (bnc#865072)

The ticket https://bugzilla.novell.com/show_bug.cgi?id=865072 explains
that crowbar behaves bad if the chef-server is gone and not reachable.

In order to display a better usable error page i have integrated more
exception classes that gets catched by the application controller to
display a proper error page if there are documents not found or the chef
server is gone.
Added a more natural tone to the error pages
The attribute name is the same in barclamp and UI
avoid use of /dev/disk/by-id in VirtualBox

Conflicts:
	crowbar_framework/app/models/node_object.rb
Add applied attribute
Merge pull request #1081 from bkutil/add_applied_attribute

Add applied attribute
Merge pull request #1068 from bkutil/proposal_applied_check

Mark proposals as applied on commit
Merge pull request #1074 from tboerger/feature/raw-mode-switch

Selecting raw mode w/o loosing data (bnc#882976)
Merge pull request #1080 from vuntz/merge-roxy

avoid use of /dev/disk/by-id in VirtualBox
Merge pull request #1075 from tboerger/feature/chef-offline

Fix UI if chef-server is gone (bnc#865072)
Fix web_app definitions for suse
Merge pull request #1082 from mjura/suse-fix-apache2

Fix web_app definitions for suse
Lookup dynamic form path translations with a fixed string

When using Handlebarjs in order to generate dynamic form elements
in arrays, the lookup was done via "{{index}}". Replace that
with index to have a slightly nicer lookup path.
Merge pull request #1083 from dirkmueller/master

Lookup dynamic form path translations with a fixed string
proposal should be active if it has role
Ubuntu fix for uncreated run directory.

Because the directory is not created, PXE installations fails with
waiting *.install files and rebooting again.

(cherry picked from commit 90e191de14b2c9850646e1d31e215d461cfbfb84)