Adding Upload volumes & security enhancements tests
VPC: removed NetworkACL interface; added getTrafficType() to Firewall
VPC: added dns1/dns2 + networkDomain to the list of bootload args passed on VPC VR start
VPC : check if dns1 is null
cloudstack 3.0 UI - VPC - implement "Add new tier" action.
cloudstack 3.0 UI - instance wizard - network offering dropdown - populate only network offerings that are not for VPC.
cloudstack 3.0 UI: ui-custom VPC - add error handling to addTierDialog().
VPC: CS-15447 - fail vpc creation when vpc provider is not enabled at least in one physical network in the target zone
VPC : CS-15424 default route & gateway is missing for private network in VPC virtual router on Vmware
reviewd by : Anthony

adding route configuration through eth0 when VPC router
VPC: added field networkacl_service_provided to physical_network_service_providers table
VPC: added "forVpc" (boolean) parameter to listRouters call - filter by the fact if router belongs to VPC or not
VPC : CS-15463  allow input traffic for established connection
VPC: don't allow vpcs for the same account with overlapping cidrs
VPC: don't allow vm to be a part of more than one VPC
CS-15456: Prohibit creating more than one VPN gateway of VPC
cloudstack 3.0 UI - VPC - add zone wizard - enable VpcVirtualRouter element, enable VpcVirtualRouter provider for advanced zone.
cloudstack 3.0 UI - VPC - infrasture page - network service providers - add "VPC Virtual Router".
CloudStack CS-15455
There are no iptable rules configured to open awsapi port (7080) for external world.

resolved fixed

reviewed-by:edison
CloudStack CS-15448
java.io.FileNotFoundException: /usr/share/cloud/management/webapps7080/awsapi/WEB-INF/classes/xes.keystore (Permission denied)

resolved fixed
reviewed-by: edison
CS-15217: Security: Malicious user is able to get the size of the cloud by enumerating IDs

Description:

	As part of the fix for Bug CS-13127, a new overloaded function,
	addProxyObject() was added to facilitate transparent db id to
	uuid conversions when db IDs were added to exceptions that were
	thrown in the Cloudstack mgmt server code. However, it turns out
	that there are quite many db IDs still in the code that are
	being directly embedded in the String message that is passed
	during exception creation.

	In this commit, we modify the default constructor of
	InvalidParameterValueException so that it takes a second
	argument of type List<IdentityProxy>. This will help developers
	see that there is a second parameter required, and make them
	look into what that parameter is about. Hopefully, this will
	stop db IDs from being embedded into the exception message.

	The parameter can be set to null though, since there are many
	places in the code that don't embed any DB IDs in the exception.

	This is still a WIP, so the older default constructor for
	InvalidParameterValueException has not been removed yet. When
	all instances of throw new InvalidParameterValueException()
	have been moved over to the new default constructor, the old
	one will be removed, else compilation will break. The reason
	for having to do this in batches is that there are way too
	many places in the code that throw exceptions, and they all
	cannot be covered in a single commit without it taking much
	time.

	In following commits, all other exceptions will be changed
	in the same way as InvalidParameterValueException.