Fixed cloud VM setup and logging

Cloud VM setup was failing because the mongoose was rejecting the
method that was being used to update users; this is now fixed.
Also fixed logging, any REST responses that used "res.send" or
"res.json" without a body were not logged correctly.
Added validation to cloud APIs to make sure all necessary fields
are included.
Updated setUpVm validation

Now users who have manually assigned VM IPs don't need to have a
Volume ID as well.