Send latest payload info for job end notification

Send notification on change in job status
Fixes #RM196 and #RM3043
The payload sent had old job information.
It should be updated when a job is updated.
We need to track the status of jobs.
This patch takes care of sending a notification
whenever there is a update on job and an actual change in
status.
Also ensure that the latest job is sent in the payload
Fixed some pep8 errors.
Merge pull request #272 from sridevikoushik31/payload

Send latest payload info for job end notification
Ensure all tables are created with utf8 character set

COMMON_TABLE_ARGS is intended to be used on all tables, but the schedules and jobs table override __table_args__ and don't include COMMON_TABLE_ARGS. This leaves the character set to be the default for the database. If the default is not utf8, you will see a problem similar to this when creating schedules_metadata where the character sets of the foreign key constraints don't match:

2014-02-07 22:31:54 CRITICAL [qonos] (OperationalError) (1005, "Can't create table 'qonos.job_metadata' (errno: 150)") '\nCREATE TABLE job_metadata (\n\tcreated_at DATETIME NOT NULL, \n\tupdated_at DATETIME NOT NULL, \n\tid VARCHAR(36) NOT NULL, \n\tjob_id VARCHAR(36) NOT NULL, \n\t`key` VARCHAR(255) NOT NULL, \n\tvalue TEXT NOT NULL, \n\tPRIMARY KEY (id), \n\tUNIQUE (job_id, `key`), \n\tFOREIGN KEY(job_id) REFERENCES jobs (id)\n)ENGINE=InnoDB CHARSET=utf8\n\n' ()
Merge pull request #280 from jerdfelt/patch-1

Ensure all tables are created with utf8 character set
make qonos migration's db_version work similar to  nova

- extracted out a new function named get_engine() from configure_db() on
  qonos.db.sqlalchemy.api module for using it for db migration
- made necessary code changes to the migration functions to use
  get_engine() from qonos.db.sqlalchemy.api module.
- removed current_version argument from db_sync() function
- added missing entity models for auto creation of the db that happens
  when qonos-api process is started.
- removed the migration script's direct dependancy on oslo.config.

For: RM#4826
make qonos migration's db_version work similar to nova

For: RM#4826
Fix the unit test failing because of 'iso8601' version upgrade.

Fixes RM#5237
Fix PEP8 issue: E501 line too long
Merge pull request #285 from venkateshsampath/pep8/E501

Fix PEP8 issue: E501 line too long
Merge pull request #284 from venkateshsampath/rm5237

Fix the unit test failing because of 'iso8601' version upgrade.
Merge pull request #282 from venkateshsampath/rm/4826

make qonos migration's db_version work similar to nova
Validate job status' error message

Updating a job status' error message with special characters should
throw an exception

Related to RM #1688
https://redmine.ohthree.com/issues/1688