CLOUDSTACK-4649: addResourceDetail - added support for userVm resource. Now "hypervisortoolsversion" get stored in user_vm_details table, and being returned as a part of listVirtualMachines call ("details" parameter)

Conflicts:
	api/src/org/apache/cloudstack/api/response/UserVmResponse.java
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDao.java
	engine/schema/src/com/cloud/vm/dao/UserVmDetailsDaoImpl.java
	server/src/com/cloud/api/query/vo/UserVmJoinVO.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
CLOUDSTACK-4649: allow to update template details with addResourceDetails API

Conflicts:
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
Some StringBuffers replaced by StringBuilders

StringBuffers replaced by StringBuilders to avoid unnecesary synchronization overhead.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
removed unused static field

- s_httpClientManager was not used

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
removed unused import

just an unused import, nothing extraordinary

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Test for AgentShell.parseCommand

- minor cleanups on the method body
  - java 1.5 for loop
  - paramName and paramValue to make the code more readable
  - NumbersUtil replaced by NumberUtils
- Test case for the parseCommand

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Test for AgentShell.loadProperties

- stream closed after properties load (with commons io)
- test added

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>