CLOUDSTACK-7871: allow VM and template details update using update APIs

Allows updating details (key/value) pair which updatse entries
invm_template_details and user_vm_details tables using updateVM and updateTemplate
APIs. This allows sys admins to update nics, controllers etc without DB hacking.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
CLOUDSTACK-7873 Fixed the user vm details length issue for higher key lengths
Fixed the wrong if else statement
Adding support for backend snapshots to Xenserver625StorageProcessor
CID-1251369: not null check changed to null check
CID-1250770 pass through mkdirs() return value
CLOUDSTACK-7880: Creating shared network results in exception
This is due to event publish being wrapped in a transaction, moved it outside of transaction scope.
CLOUDSTACK-7583: Send VmStats to Graphite host when configured

This allows external processing of VmStats information without using
the usage server of CloudStack

Statistics are being send to Graphite using UDP and not TCP.

UDP is used to prevent the management server waiting for TCP timeouts
when the Graphite server is unavailable
CLOUDSTACK-7865: fixed pep8 errors and errors in wrong references
to the variables
CLOUDSTACK-7706: Coverity defects

Signed-off-by: Santhosh Edukulla <santhosh.edukulla@gmail.com>
CLOUDSTACK-7884: Cloudstack MS is not responding (happening randomly) after some restart.
CLOUDSTACK-7864: CPVM continues to be in Stopped state after a failure to start because of a management server restart. Added optimization to purge queue items for cancelled jobs.
CLOUDSTACK-7875: [UI] - VPC - Fix validation

Wrong format check is being made on Create VPC box - DNS domain
Information Removing IPv4 validation from the DNS field, the original
behavior is restored. (The API validates this field.)
CLOUDSTACK-7645: [UI] Fixed incorrect label issues caused the dictionary split

In some cases the UI does not display the correct text, displaying 'label.xyz' instead of the localized string.
This appears to be due to the dictionary split: entries in dictionary2.jsp are not found because the dictionary has not been extended with dictionary2 as expected.

In this fix:
- Instead of extending the dictionary, we leave it as it is and change the localization function to look in the dictionary first and, if the item is not found there, then look in dictionary2.
- This way we are not depending on the extent() function to be called at the 'right' time; In turn, the localization function will be aware of both dictionaries.
- In the future, when we add another dictionary, we will have to modify this function only.
CLOUDSTACK-7831: Fixed unlocalized string on Advanced Network -> Network tab
CLOUDSTACK-7318: [UI] Add error handler for VM snapshot creation

Fixes the issue where processing wheel continue to spin even after error
message is displayed during VM snapshot creation
CLOUDSTACK-3528: [UI] Fix list calls on accounts page

Fix List calls in the processing state forever with invalid name
provided with Account name search filter -Added error handling for
Events, Instances, Network, Projects, Storage pages where an advanced
search by an invalid account name was making the UI to show in progress
state forever.
Add properties file in same folder as template
CLOUDSTACK-7886: cloudstackoperations like deployvm,deleteNW are failing if CS fail to contact rabbit mq server. This is happening in case of Async API calls.

Signed-off-by: Koushik Das <koushik@apache.org>
CLOUDSTACK-3383: Fetch CPU utilization more reliable.

This should fix that we can't gather CPU statistics on hypervisors
> Ubuntu 12.04