Host's software update: Update API.md

Define get and POST action update API for software update resource.

Signed-off-by: Paulo Vital <pvital@linux.vnet.ibm.com>
Signed-off-by: Ramon Medeiros <ramonn@linux.vnet.ibm.com>
Host's software update: Update REST API

Define PackageUpdate resource features according to API.md
Activate auth support to new resource

Signed-off-by: Paulo Vital <pvital@linux.vnet.ibm.com>
Signed-off-by: Ramon Medeiros <ramonn@linux.vnet.ibm.com>
Signed-off-by: Aline Manera <alinefm@br.ibm.com>
Host's software update: Update backend.

Update model and mockmodel to support backend opertions.
Add new file implementing backend operations, with four new classes:

1) SoftwareUpdate (object): Class to represent and operate with OS software
update system in Kimchi's perspective. It's agnostic to host's package management
system, and can execute all operations necessary: get all packages to update,
get information about one package and execute the update. This class will load
in runtime the necessary classes to work with the host's package management:
YumUpdate for YUM systems based, AptUpdate for APT systems based and ZypperUpdate
for Zypper systems based.

2) YumUpdate (object): Class to represent and operate with YUM. Loaded only on
those systems that supports YUM, it's responsible to connect and collect
information of the packages to be updated. Also it's responsible to execute the
update of the system.

3) AptUpdate (object): Class to represent and operate with APT. Loaded only on
those systems that supports APT, it's responsible to connect and collect
information of the packages to be updated. Also it's responsible to execute the
update of the system.

4) ZypperUpdate (object): Class to represent and operate with Zypper. Loaded only
on those systems that supports Zypper, it's responsible to connect and collect
information of the packages to be updated. Also it's responsible to execute the
update of the system.

Signed-off-by: Paulo Vital <pvital@linux.vnet.ibm.com>
Signed-off-by: Ramon Medeiros <ramonn@linux.vnet.ibm.com>
Signed-off-by: Aline Manera <alinefm@br.ibm.com>
Host's software update: Update Makefile

Update Makefile to provide software update support

Signed-off-by: Paulo Vital <pvital@linux.vnet.ibm.com>
Signed-off-by: Ramon Medeiros <ramonn@linux.vnet.ibm.com>
Host's software update: Update test cases.

Added unit tests into test_mockmodel.py

Signed-off-by: Paulo Vital <pvital@linux.vnet.ibm.com>
host update: Update po files

Update po files as new messages were added to support host software
update.

Signed-off-by: Aline Manera <alinefm@br.ibm.com>
host update: Expose update tool

When there is no package manager compatible with the system, UI needs to
know to enable/disable the host update functionality.
Also update API.md accordingly and add missing parameter
system_report_tool there too.

Signed-off-by: Aline Manera <alinefm@br.ibm.com>