Return empty dict when request body is empty

If Kimchi receives a POST or PUT command with an empty body, a 400 error
is returned because the server cannot parse the [empty] body.

Add an additional check on the server so the request body is only parsed
if it has content; otherwise, an empty dict will be returned.

Signed-off-by: Crístian Viana <vianac@linux.vnet.ibm.com>
Signed-off-by: ShaoHe Feng <shaohef@linux.vnet.ibm.com>
bugfix: Use correct error code when current snapshot does not exist

If a VM has no current snapshot, a NotFoundError is raised by the
backend. However, the error reason is 'KCHSNAP007E', which is invalid.

Use the correct error value (KCHSNAP0007E) when raising the exception
described above.

Signed-off-by: Crístian Viana <vianac@linux.vnet.ibm.com>