Moved role constraints into model and removed edit deployment

(cherry picked from commit 8b54013e59972d38d4dfff9ba1f807e642e66412)
Merge pull request #88 from vuntz/release/roxy/master

Moved role constraints into model and removed edit deployment
Removed the single assignment block from constraints
Merge pull request #89 from tboerger/feature/roxy/fix-constraints

Removed the single assignment block from constraints
Allow to deploy more than one DNS server - master/slaves

Because chef-clients could generate configuration in different times and
it can take some time, only master/slave replication will provide consistency
for all DNS zones on each nodes.
allow for 7 DNS servers

This number is arbitrary, but
7 DNS servers ought to be enough for everyone
as more will incur overhead for syncing zones
and even big websites like facebook, wikipedia, google and microsoft
only use 2, 3, 4 and 5 DNS servers.
notify all slave servers of zone changes

normal behaviour is to only notify servers listed in NS records
which for many zones is only the master DNS server
cleanup group code
nicify code
reduce number of find_node_by_name calls
resolve problem with zones slave directory
Merge pull request #86 from SUSE-Cloud/HA

[roxy] HA: Allow to deploy more than one DNS server
Update constraints on dns-server role in the right place

We moved the constraints to the model.
Merge pull request #91 from vuntz/release/roxy/master

Update constraints on dns-server role in the right place
Fix hostnames for admin virtual IPs

Because of a wrong check, we are always creating "admin.$foo" hostnames
for virtual IPs in the admin network, while this should really be just
"$foo".
Merge pull request #93 from vuntz/vip-hostname

Fix hostnames for admin virtual IPs