CLOUDSTACK-4681: data disk with local disk offering are geting created on shared storage
The cluster and zone wide storage pool allocators returned shared pools even for volumes meant to be on local storage pool.
If the VM uses local disk then cluster and zone storage allocators should not handle it and return null or empty list.

Also fixed the deployment planner to avoid a cluster if
a. avoid set returned by storage pool allocators is empty OR
b. all local or shared pools in a cluster are in avoid state

Conflicts:
	engine/storage/src/org/apache/cloudstack/storage/allocator/ClusterScopeStoragePoolAllocator.java
	engine/storage/src/org/apache/cloudstack/storage/allocator/ZoneWideStoragePoolAllocator.java
CLOUDSTACK-3911: [PortableIP] there is no check while adding a zone
public range to see whether the same VLAN exists in portable IP range.

added check to enusre a VLAN id used for a public IP range is not used
for portable ip range

Conflicts:
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java