Fixes pagination with non-string markers types.

This allows the pagination code to work even if the next marker is
not a string but a different type such as a date time.

Fixes bug 1240275

Change-Id: Iee7223a8b6907254b9ab345c592bff208885a36e
Moved create_instance DNS attempt to post-prepare

Moved the actual attempt to add DNS to after the prepare call because of
two issues 1) instances that have failures on DNS end up in a condition
in which the container is unusable - there is no support to send a
prepare call otherwise and 2) DNS isn't required for any operations
after it's addition thus making it a gating operation for prepare makes
no sense because if there is a failed DNS request, retrying that
operation is much less complex than re-issuing a prepare call and
support teams can handle this by hand.

blueprint trove-taskmanager-send-prepare-before-dns

Change-Id: I51fa2115e3d52a85aa87970903922f25bae3bf9f
Merge "Fixes pagination with non-string markers types."
Fix User ID in Context and Notifications

    Notifications should contain the User ID not the User Name
    This change replaces the deprecated X-User header with
    X-User-Id.  In most cases, the User ID is preferred over the
    name.

Fixes: Bug 1235145
Change-Id: I3cce6b35fc40f4ff4cc45b04714067956fb1864c
Merge "Fix User ID in Context and Notifications"
Security groups workflow update

Changes: Creating new Instance Task Status for Security groups
         Updating statuses if exception happend.

If security groups quota exceeded trove-api falls into exception
with updating instance task and service task statuses
to inform user that exception happend while security groups creation

Moving secgroup provision logic to the task manager

Author: Steve Leon <steve.leon@hp.com>
Co-Authored-By: Denis M <dmakogon@mirantis.com>

Change-Id: I74def4a4489951139ce8462104f1d7987c4f2fca
Implements: blueprint security-groups-workflow-update
Added Redis CRUD operations.