engine: Fixing saveOrUpdate qmethod in AsyncTaskUtils

The following patch should solve a bug, when async_task_entities
table never filled.
The bug was caused because of using a wrong API, so a fix is start to use
a correct API and remove unused APIs

Change-Id: I8874a4222ac17ecc4ca9de3fbccc18e16efe20c8
Signed-off-by: Michael Kublin <mkublin@redhat.com>
engine: Improving GetAsyncTasksByStoragePoolId query

The following patch will simplify a query, we don't need to make any join,
access to async_tasks table is enough

Change-Id: I295291a2ac84e021b7354a3fd072ba5534af533d
Signed-off-by: Michael Kublin <mkublin@redhat.com>
engine: Replacing call to host by query

The following patch should replace a call to host by query during moving host to maintenance.
All task should be kept in Db so no need to perform an XML RPC call.
Query to DB is much more efficient and faster.

Change-Id: I1e864961ab05538bd565d74f31869f64aa40b758
Signed-off-by: Michael Kublin <mkublin@redhat.com>