dynamicTable overwrites changes w/ old data

BNC#865526

The dynamicTable plugin caches the proposal attributes JSON in it's json
property and does not take into account that the data might have
changed when it writes its own copy back.

This fix minimizes the race window. Another one would be to
make sure we always operate only on the path + value that changed.
webui: Sort clusters in the list of clusters
Do not rely on TCP keep-alive for running commands through ssh

The timeout for this is huge (not sure how big, but certainly more than
10 minutes). This is extremely bad when we run chef-client over ssh
while applying a proposal because if the host goes down, we will be
totally blocked for too long. This happens even more since we have HA
and STONITH can kill nodes.

Instead, we use the ServerAliveInterval=15 option, which means we use a
ssh-internal mechanism for a 15s timeout. It will try this three times,
resulting in a 45s timeout before giving up. This is largely enough in
the context of crowbar.