Several enhancements to datastore support for the SCVMM integration

1)	Extended datastore support to include a datastore object for the local storage on the hyperv box. Explicitly filtered out "System Reserved" volume in the powershell script since we will not provision there.
	There were several ways to gather both local and shared storage; the simplest yet most economical way was to change the powershell script to gather the disk volumes in the get_host() function while we are gathering the host objects, this avoids making an extra powershell call.
2)	Changed the VM location property to be the location of the VMC file ( vm config file) minus the drive.
3)	Changed the datastore name to be a URI and to include the hostname in addition to the volume name.

FYI - 2) and 3) above will be concatenated to enable fleecing.

All of the above changes involved modifications to the spec tests and generated data files.
Simplify default_part_size by removing the unsupported MySQL.
Simplify count_of_vmdk_disk_files by extracting a method.
Whitespace changes
Merge pull request #53 from jrafanie/remove_remaining_mysql_cruft

Remove remaining mysql cruft
Extracted get_layout method
No need to interpolate a string
get_session_data and set_session_data methods should be together
SCVMM - Power operations for VMs
Removed security vulnerability and added error logging

1) Security Vulnerability
Although unlikely, it is possible for the vm name to be tampered with and set to an executable command e.g. "rm -rf".
Instead of "white listing" or making sure the vm name conforms to Internet Standards (and RFC 1123), the GUID is now passed into the DOS power operation command instead of the name. This involves a simpler sanitizing approach - name.guid?

2) If a powershell operation returns an error it is now logged in the scvmm_log file.
Simplified setter
FROM: session[key] = @display == nil ? session[key] : @display
TO: session[key] = @display unless @display.nil?
Convert if x is not nil to unless x.nil?
Create variable for readability
Changed to use Ruby's OR pattern
FROM: x == nil ? default : x
TO: x || default
Extracted get_layout method
Rubocop style issues
Replaced the method drive_letter_regex with a const
Merge pull request #23 from bronaghs/scvmm_datastore_enhancements

Several enhancements to datastore support for the SCVMM integration
Merge pull request #54 from chessbyte/cleanup_get_and_set_session_data_in_all_controllers

Clean up get_session_data and set_session_data methods in all controllers
Fix miq_ae_datastore spec restore test.