Fix quota issue where usages can drop to negative value

This is caused by an exception occuring in the model when creating
and instance. When this happens, the quota rolls back but the DB
record, created for that instance, does not. This issue is NOT fixed
in this patch but depends on
BP https://blueprints.launchpad.net/trove/+spec/security-groups-workflow-update

What this fix does is adds a check that prevents quota usages drop below 0.

Also it fixes a bug where the reserve quota was being set and not added.
This causes problem when multiple requests are sent at the same time
and causes race condition issues.

Fixes bug 1178333

Change-Id: I1c64941815b91e58d79b17d7a6e69c15c1daaf36
Update trove-guestagent.conf.sample

Add missing 'service_registry_ext' parameter
Remove obsolete 'guestagent_manager' parameter

Fixes bug: 1237910

Change-Id: I66606672bd5bdad21c00ce2ad8d7a8eb62cff8cc
Update statuses on GA timeout

Updates instance status if GA stacks at BUILD status
after poll_until
Change-Id: I581f67d1be9f8e9b2080daa86d51d89326840c5c
Implements: blueprint update-instance-task-status-if-instance-stucks-at-build-status-to-error
Quote and escape pagination markers

urlparse.parse_qsl urldecodes fields in URLs, but
the next URL and the next marker are then out of sync.
This change reverses that behavior, and also makes sure
that dots in markers are also escaped as %2e as they should be.

fixes bug #1188352

Change-Id: Idfb7b4cbd3c14bb0d34c506d7d3d5d3683735e7d
Merge "Update trove-guestagent.conf.sample"
Merge "Fix quota issue where usages can drop to negative value"
Merge "Quote and escape pagination markers"